Restructure docs around "For users / Under the hood / For developers"
The flat docs tree mixed three audiences on one page — casual users who
want to try Opake, readers who want to know how it works, and developers
who want to build on it. Forcing every visitor through the same card grid
meant the casual user scrolled past "X25519 key wrapping" on their way to
"Getting Started", and the developer scrolled past "How to share with a
friend" to find the CLI reference.
Restructured the content tree to match intent:
content/docs/
index.mdx (rewritten landing)
use/ "For users" — store, share, recover
getting-started.mdx
pairing.mdx
seed-phrase.mdx
sharing.mdx (was sharing-dids — dropped the jargon)
workspaces.mdx (was keyrings — matches the web UI)
troubleshooting.mdx (moved out of top level)
understand/ "Under the hood" — crypto, records, protocol
encryption.mdx (was encryption-keys)
at-protocol.mdx
glossary.mdx
build/ "For developers" — CLI, SDK, lexicons
cli.mdx
faq.mdx (cross-cutting, stays near the top of the landing)
Note "Under the hood" deliberately breaks the "For X" pattern: the section
is about the content, not the audience, so anyone curious enough to read
doesn't have to decide whether they qualify as a developer first.
- `docs-registry.ts` gains a `category` field and a `docsByCategory`
helper. `CATEGORY_META` is the source of truth for the section labels
and descriptions that render on the landing.
- Both `$slug` routes (public + cabinet) update their MDX imports.
- The cabinet docs index groups cards by category and puts two entry
points at the top — a big primary "Just getting started?" CTA and a
slim secondary "Got a specific question? → FAQ" row, so visitors who
don't know which category fits them have obvious next clicks before
ever hitting the section grids.
- Public landing (`content/docs/index.mdx`) mirrors the same top-of-page
structure with new `<DocsIndexPrimary>` and `<DocsIndexSecondary>`
components, then three `<DocsIndexSection>` blocks — one per category.
- Cross-doc links updated for the renamed slugs (sharing-dids →
sharing, encryption-keys → encryption).
- CLI command examples in cli.mdx + keyrings.mdx (now workspaces.mdx)
swept for the `opake workspace` / `opake account` / `opake share` /
`--workspace` subcommand shape introduced in the monorepo rework.
- `glossary.mdx`: fixed a tautology — the Indexer entry said it fills
the atproto "indexer" role; corrected to "appview".