Kestrel

Performance

Kestrel is fast because there is almost nothing to wait for: static pages, bundled fonts, token artwork, and no runtime requests.

On this page

Static output

The build writes plain HTML, CSS, and small scripts to dist/. No page issues a runtime request for its content: the library records, the docs search index, and the pricing values are all embedded at build time. A page that needs data waits for nothing, because the data is already in the page.

Budgets

Hold these budgets when changing the site:

A budget breach is a design discussion, not a quiet exception: measure first, then decide.

Images and fonts

Fonts are bundled from the package (IBM Plex Sans and IBM Plex Mono), so text never waits on a font service. Artwork defaults to design tokens; if a photograph is supplied later, it must keep its dimensions, alternative text, and license, and it must ship with the build rather than loading from elsewhere.

Measuring

Measure from the build output, not from memory:

npm run build
ls -la dist/

Compare page sizes before and after a change. A page that grew without new content gained weight somewhere; find it before publishing. The Troubleshooting docs cover build failures.

Continue with the Troubleshooting docs.