From 1c568ea1a0cb12e24f91d2257b2d1012fd01b6a8 Mon Sep 17 00:00:00 2001 From: zzstoatzz Date: Tue, 6 Jan 2026 01:34:04 -0600 Subject: [PATCH] docs: explain ATProto doc publishing in readme MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit the readme now explains that zat publishes its own docs as site.standard.document records - dogfooding the protocol. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- .tangled/workflows/deploy-docs.yml | 6 ++---- CHANGELOG.md | 5 +++++ README.md | 15 ++++++++++++++- scripts/publish-docs.zig | 4 ++-- 4 files changed, 23 insertions(+), 7 deletions(-) diff --git a/.tangled/workflows/deploy-docs.yml b/.tangled/workflows/deploy-docs.yml index c4f3560..012a200 100644 --- a/.tangled/workflows/deploy-docs.yml +++ b/.tangled/workflows/deploy-docs.yml @@ -6,19 +6,17 @@ engine: nixery dependencies: nixpkgs: - - nodejs - - coreutils + - bun - curl environment: - # Use DID directly to avoid handle-resolution issues in CI. WISP_DID: "did:plc:mkqt76xvfgxuemlwlx6ruc3w" WISP_SITE_NAME: "docs" steps: - name: build docs site command: | - node ./scripts/build-wisp-docs.mjs + bun ./scripts/build-wisp-docs.mjs - name: deploy docs to wisp command: | diff --git a/CHANGELOG.md b/CHANGELOG.md index fd5a752..1a1c53f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # changelog +## 0.1.1 + +- xrpc client sets `Content-Type: application/json` for POST requests +- docs published as `site.standard.document` records on tag releases + ## 0.1.0 sync types for firehose consumption: diff --git a/README.md b/README.md index a73b861..bb4641c 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,15 @@ # [zat](https://zat.dev) -AT Protocol building blocks for zig. [roadmap](docs/roadmap.md) · [atproto records](https://at-me.zzstoatzz.io/view?handle=zat.dev) +AT Protocol building blocks for zig. + +
+this readme is an ATProto record + +→ [view in zat.dev's repository](https://at-me.zzstoatzz.io/view?handle=zat.dev) + +zat publishes these docs as [`site.standard.document`](https://standard.site) records, signed by its DID. + +
## install @@ -185,3 +194,7 @@ breaking changes bump the minor version and are documented in commit messages. ## license MIT + +--- + +[roadmap](docs/roadmap.md) · [changelog](CHANGELOG.md) diff --git a/scripts/publish-docs.zig b/scripts/publish-docs.zig index 033753f..c433fbc 100644 --- a/scripts/publish-docs.zig +++ b/scripts/publish-docs.zig @@ -183,7 +183,7 @@ fn extractTitle(content: []const u8) ?[]const u8 { return null; } -fn timestamp() [24]u8 { +fn timestamp() [20]u8 { const epoch_seconds = std.time.timestamp(); const days: i32 = @intCast(@divFloor(epoch_seconds, std.time.s_per_day)); const day_secs: u32 = @intCast(@mod(epoch_seconds, std.time.s_per_day)); @@ -209,7 +209,7 @@ fn timestamp() [24]u8 { const mins = (day_secs % 3600) / 60; const secs = day_secs % 60; - var buf: [24]u8 = undefined; + var buf: [20]u8 = undefined; _ = std.fmt.bufPrint(&buf, "{d:0>4}-{d:0>2}-{d:0>2}T{d:0>2}:{d:0>2}:{d:0>2}Z", .{ @as(u32, @intCast(y)), @as(u32, @intCast(m + 1)), @as(u32, @intCast(remaining + 1)), hours, mins, secs, }) catch unreachable; -- 2.51.2