···00001# zat - expanded scope
23the initial release delivered string primitives (Tid, Did, Handle, Nsid, Rkey, AtUri). this plan expands toward a usable AT Protocol sdk.
···1+# archived: expanded plan (partially implemented)
2+3+This file is preserved for context/history. Current direction lives in `docs/roadmap.md`.
4+5# zat - expanded scope
67the initial release delivered string primitives (Tid, Did, Handle, Nsid, Rkey, AtUri). this plan expands toward a usable AT Protocol sdk.
+4
docs/plan-initial.md
docs/archive/plan-initial.md
···00001# zat - zig atproto primitives
23low-level building blocks for atproto applications in zig. not a full sdk - just the pieces that everyone reimplements.
···1+# archived: initial plan (out of date)
2+3+This file is preserved for context/history. Current direction lives in `docs/roadmap.md`.
4+5# zat - zig atproto primitives
67low-level building blocks for atproto applications in zig. not a full sdk - just the pieces that everyone reimplements.
+40
docs/roadmap.md
···0000000000000000000000000000000000000000
···1+# roadmap
2+3+`zat` is a grab bag of **AT Protocol building blocks** in Zig: parsers, validators, resolvers, and small protocol helpers.
4+5+This roadmap is intentionally short. If it doesn’t fit into one file, it probably belongs in issues.
6+7+## now
8+9+- keep current APIs stable (0.x semver)
10+- tighten docs/examples as real apps discover sharp edges
11+- keep the “primitives, not framework” ethos
12+13+## next
14+15+### polish
16+17+- improve docs around common workflows:
18+ - resolving handle → DID → PDS
19+ - making XRPC calls + parsing JSON
20+ - verifying JWTs from DID documents
21+- add more integration tests that hit real-world edge cases (without becoming flaky)
22+23+### primitives
24+25+- fill gaps that show up repeatedly in other atproto projects:
26+ - CIDs and common multiformats plumbing
27+ - richer `AtUri` helpers (safe joins, parsing variants)
28+ - more ergonomic JSON navigation patterns (still optional, no forced codegen)
29+30+## later (maybe)
31+32+- lexicon codegen is still “probably a separate project”
33+- higher-level clients/frameworks stay out of scope
34+35+## non-goals
36+37+- token refresh/session frameworks
38+- opinionated app scaffolding
39+- “one true SDK” that tries to do everything
40+