A site that teaches each skill by showing what to say and what comes back, states exactly what each one needs installed, and credits every author with a receipt instead of a thank-you.
The README already works as a front door. The docs site is where a person goes when they have installed the kit and want to use one skill well: what it does, what to type, what it returns, what it needs from the machine, and where it hands off. One page per skill, written in the same voice as the cards, with the skill's own SKILL.md as the source so the docs can never say something the skill doesn't.
The tribute pages are the repo's provenance made readable. Each author gets a page generated from foundry/MANIFEST.json: which files are theirs, which skill carries each one, the class it entered as, the ledger rulings that touched their work, and the watcher that checks their upstream weekly. Nothing on those pages is written by hand, so they stay true the same way the kit does.
Nimbus fits because it gives every page a .md twin and an llms.txt index. A coding agent installing the kit can read the setup page for pe-verify as cleanly as a person can, which is the audience half the time.
| Section | Pages | Where the content comes from |
|---|---|---|
| Start | Install · Setup by skill · The .product/ folder · Lazy mode | Authored. The setup matrix below is the spine of this section. |
| Skills | pe-design · pe-build · pe-review · pe-verify · pe-product-description · pe-brand-assets · product-engineering | Frontmatter and modes pulled from each SKILL.md at build time; the teaching prose (say this, you get) is authored per page. |
| Workflows | Design, approve, build, verify · Review a PR · Release check with the QA list · Document a product | Authored. Each is a real sequence across skills, shown as the conversation it takes. |
| People | Emil Kowalski · Jakub Krehel · Julien Thibeaut · Plannotator · Vercel · Leon · Steve Ruiz · Paul Bakaus | Generated from MANIFEST.json and NOTICE. The People index carries the provenance summary (byte-for-byte, hash-verified, weekly watcher) and links to foundry/ on GitHub. No bios unless the author supplies one. |
| Reference | The report contract · DESIGN.md format · The approved record · The memories file | The skills' own reference files, rendered as-is with their provenance line. |
The site in its dark identity. Light is the other theme, from the same tokens as the light hero.
Six agent skills for product design and engineering. Converged from the best published design-engineering skills, with the source prose preserved.
Pass or fail on every check, with recordings. Drives the product in Playwright, captures a recording and checkpoint stills, and opens a report.
| You say | You get |
|---|---|
| "Verify the toolbar" | A feature run: one item, a recording with 3 to 6 checkpoints, a verdict, and a report that opens in your browser. |
| "Run the QA list against this PR" | A selective list run: the entries the change set can affect, the rest shown as not run with a reason. |
| "Release check, everything" | Every entry in .product/qa-list.md, one pass, fail, flag, or skipped each, with evidence. |
Fails go to pe-build with their evidence. Whether it looks right is pe-review. Whether it matches the approved mock is pe-review, fidelity mode.
The review engine, diff scoping, stress tests, and the UI, layout, typography, color, writing, and accessibility references. The largest single source in the kit.
| File in the kit | Class | Skill |
|---|---|---|
| references/engine.md | verbatim | pe-review |
| references/change-review.md | verbatim | pe-review |
| references/stress-scenarios.md | verbatim | pe-review |
| references/craft/ui/enter-exit.md | verbatim | pe-build |
| references/craft/typography/index.md | verbatim | pe-build |
| … 36 more, listed in full |
No adjectives, no bios. The page's respect is in its accuracy.
Everything installs with one command; the skills differ in what they need from the machine and the repo after that. This matrix is the Start section's core page and repeats, per skill, on each skill page.
| Skill | Required | Optional | Convention |
|---|---|---|---|
| all | npx skills add backnotprop/product-engineering (Claude Code installs to .claude/skills/; other agents per skills.sh) | a DESIGN.md from pe-design, understand mode | a .product/ folder for approved records, the QA list, and product notes |
| product-engineering | nothing beyond the install | say "product engineering, …" and let it route | |
| pe-design | a browser to open the HTML artifacts | the app running locally for vary mode's in-page picker; network for understand mode from a public URL | approvals land in .product/approved/<slug>/ |
| pe-build | the project's own dev server | the animations.dev course pack, installed locally with foundry/scripts/course-dropin.sh (purchasers only; never committed) | reads DESIGN.md and .product/approved/ before building |
| pe-review | a diff, a URL, or a screenshot to review | a browser for screen and a11y modes | fidelity mode reads .product/approved/ |
| pe-verify | python3; Playwright with Chromium for browser checks | ffmpeg for mp4 recordings | .product/qa-list.md; ~/.product-engineering/memories.md remembers other locations |
| pe-product-description | the source repo path and commit; a way to run the product for verification | python3 for the link checker | output is its own repo of documents |
| pe-brand-assets | DESIGN.md or a brand/ folder (it refuses to invent brand values) | an SVG-to-PNG renderer for OG and social images | SVG is the source of truth; PNG only where a destination requires it |
Nimbus scaffolds the site as files we own, so the brand goes into src/styles/globals.css once and every component follows. The mapping is small because the brand is small.
| Nimbus token | Value from DESIGN.md | Note |
|---|---|---|
| --nb-background | dark #101114, light #FFFFFF | the body gets the radial gradient to #23252B (light: vertical to #F1F1EF), fixed, read as lighting |
| --nb-foreground | #F5F5F4 / #1A1B1E | |
| --nb-muted-foreground | #8B8D94 / #71737A | faint step #5C5E66 for mono metadata |
| --nb-primary | = foreground | there is no accent; buttons and links are ink on ground |
| --nb-card | linear #1D1F24 → #121316 | the one component; the skill cards and LinkCards share it |
| --nb-font-sans / --nb-font-mono | Geist / Geist Mono, self-hosted via fontsource | replaces Inter and JetBrains Mono |
| --nb-h1-* | 600, -0.03em, lowercase wordmark; verb headlines keep sentence case | |
| status tokens | Nimbus defaults, desaturated slightly | used only inside asides and the setup matrix, never as accent |
Search (Pagefind), the sidebar rail and mobile sidebar, breadcrumbs, the .md twins, llms.txt and llms-full.txt, sitemap and JSON-LD, per-page OG images, and the prose linter. The OG template is the only Nimbus asset restyled: it becomes the brand card, so a shared skill page previews as its own card.
skills and people, both fed by a build-time script that reads SKILL.md frontmatter and MANIFEST.json. A page cannot drift from the repo./examples/.npx @cloudflare/create-nimbus-docs@latest docs inside the repo (or a sibling repo; see the decision below), Cloudflare target, empty content.globals.css from DESIGN.md; self-host Geist and Geist Mono; restyle the OG route to the card.scripts/sync-docs-data.py: reads the six SKILL.md files, MANIFEST.json, NOTICE, LEDGER.md; writes src/data/skills.json and src/data/people.json. Run it in CI next to check-integrity.sh so the site fails the same way the kit does.docs/ folder in product-engineering keeps sync trivial and the RIPPLE honest; a separate repo keeps the kit's tree clean for npx skills add. I'd keep it in the repo, excluded from the skill install.