Kestrel

Customization

Everything a buyer is expected to change lives in a small set of files. Change those; leave the application logic alone.

On this page

Brand tokens

The brand file at src/content/brands/default.js holds identity (name, tagline, description, contact address, canonical address) and the palette switch. The palette switch is a single value; changing it recolors the whole site. Design tokens live in src/styles/tokens.css: edit token values, never invent new token names, so every component keeps reading the same set.

Copy and content

Page copy lives in src/pages/ (marketing pages, changelog, 404) and article prose lives in src/pages/docs/. Article order, titles, summaries, and section anchors live in the collection module at src/content/docs/articles.js; keep that module and the pages in agreement, or the index, search, and pager will disagree.

Plans

Plans live in the single plan object at src/components/marketing/pricingPlans.js. Change a name, a monthly price, or a feature list there and the pricing page, its toggle, and its announcement all follow. Annual totals are derived, never typed: annual equals monthly times twelve times four fifths, rounded to the nearest dollar.

Form adapter

When you add a form, point it at an adapter. An adapter decides what happens on submit:

{
  contact: { adapter: 'demo' }
}

Use demo for every form until a real destination is wired in. A form with no adapter is a form that silently drops submissions; see the Troubleshooting docs if a form does nothing.

Removing sample data

Before publishing, remove every sample:

  1. Replace the sample records in src/data/fixtures/index.js with real records in the same shape.
  2. Remove data-demo="true" from every value that is no longer a sample.
  3. Replace the sample plans in src/components/marketing/pricingPlans.js with real prices, or remove the pricing page from navigation.
  4. Search the built output for the words "Sample data" and confirm nothing remains.

License and credits

The package license is in LICENSE.md at the package root. Third-party credits (fonts and artwork) are in docs/credits-and-licenses.md. Keep both files with the package when you redistribute it.

Continue with the Accessibility docs.