Files
docs/apps/pulsar-docs
zeekayandHanzo Dev 01a12d457b sidebar: give every section separator an icon
Measured across apps/*/content/**/meta.json: 76 separators, 2 with an
icon, 74 without. A bare "---Title---" renders as naked text between
icon-bearing rows, so the majority case looked like the broken one.

72 of 76 now carry one. The remaining 4 are in
content/docs/projects/hanzoai/python-sdk/, which is gitignored upstream
content mirrored by scripts/sync-project-docs.ts — this repo's rule for
ported docs is "port, don't re-author", and an edit there is overwritten
on the next sync anyway.

11 of the 72 could not be fixed by editing the file. services/meta.json
is REGENERATED from the @hanzo/products catalog on every build:pre, so a
hand-added icon survives until the next build and no further. The map
lives in the generator instead. It lives there and not in @hanzo/products
because the catalog owns the taxonomy while how a category is DRAWN is a
docs concern; putting it upstream leaks presentation into the product
catalog. A category with no entry now warns by name rather than quietly
shipping a bare separator again.

One vocabulary, reused on purpose: the same idea takes the same mark
everywhere (Getting Started/Setup -> Rocket, Commands -> Terminal,
Reference -> BookOpen, Security -> ShieldCheck, ...). Every name is a
verified lucide export; an unknown one would not fail the build, it would
warn and render nothing, which is the state this commit removes.

Co-authored-by: Hanzo Dev <[email protected]>
2026-08-06 00:36:31 -07:00
..

Pulsar Documentation

Documentation site for Pulsar — threshold ML-DSA-65, the NIST MPTC submission package by Lux Industries.

Built with Hanzo Docs.

Development

pnpm install
pnpm --filter=pulsar-docs dev    # http://localhost:3008
pnpm --filter=pulsar-docs build  # static export to ./out

Structure

apps/pulsar-docs/
├── app/                    Next.js app directory
│   ├── (home)/             Landing page
│   └── docs/               Documentation pages
├── content/docs/           MDX content
│   ├── index.mdx
│   ├── getting-started.mdx
│   ├── protocol/           2-round threshold, FIPS 204, DKG, parameters
│   ├── proofs/             EasyCrypt, Lean bridge, axiom inventory, extraction
│   ├── reference/          API, KAT, interop
│   ├── security.mdx
│   ├── nist-mptc.mdx
│   ├── postmortem.mdx
│   └── changelog.mdx
├── lib/                    Utilities
└── source.config.ts        MDX configuration (KaTeX wired)

Source of truth

Content is authored from ~/work/lux/pulsar/main (README, EasyCrypt README, Lean ↔ EC bridge, byte-walk roadmaps, BLOCKERS, CHANGELOG, SUBMISSION, SECURITY). Math is rendered with KaTeX.