Skip to content

feat: per-subcommand pages on the website#30

Merged
rafaelperoco merged 1 commit into
mainfrom
feat/per-subcommand-pages
May 3, 2026
Merged

feat: per-subcommand pages on the website#30
rafaelperoco merged 1 commit into
mainfrom
feat/per-subcommand-pages

Conversation

@rafaelperoco
Copy link
Copy Markdown
Owner

Closes part of #13.

Adds five dedicated pages on secretgenerator.org so each subcommand has a route ranked for its own intent:

  • /password/ — "Random password generator (auditable, NIST-aligned)"
  • /passphrase/ — "Diceware passphrase generator (EFF Large Wordlist)"
  • /secret/ — "CSPRNG secret generator (base64url, 256-bit)"
  • /api-key/ — "API key generator (Stripe-style prefix_random)"
  • /pin/ — "Numeric PIN generator with weak-pattern blocklist"

Each page bundles per-subcommand title and meta description for SEO, the live WebAssembly Generator pre-selected on that tab, the relevant defaults table, three CLI examples, code snippets in Python/Node/Rust/Go pinning --require-schema-version=1, an FAQ tuned to common LLM-search queries, and cross-links to the other four pages.

Implementation:

  • New web/src/data/subcommands.ts is the single source of truth.
  • New web/src/pages/[slug].astro consumes the catalog via getStaticPaths() so adding a new subcommand only edits the data file.
  • Generator accepts an initial prop so the home page and per-subcommand pages share the same component.
  • The home page now lists all five as clickable cards under #subcommands and the nav points to that section.
  • build-llms-txt.mjs is updated so llms.txt links to the dedicated pages instead of the install anchor.

Build verified locally: 6 pages generated, titles and meta descriptions confirmed in the static HTML, cross-link grid correct on every page.

@rafaelperoco rafaelperoco merged commit bc8dd33 into main May 3, 2026
12 checks passed
@rafaelperoco rafaelperoco deleted the feat/per-subcommand-pages branch May 3, 2026 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant