← blog

StoneBark 1.0: stable API and full-text search

2026-03-30 · Finn O'Brien

StoneBark 1.0 marks the project as stable. The public API is frozen; future releases will be backwards-compatible within the 1.x series.

Full-text search

The biggest addition in 1.0 is a full-text search index that gets built at site-generation time and served as a single JSON file. The search frontend is about 80 lines of vanilla JavaScript embedded in the default theme — no Lunr, no Pagefind, no build pipeline.

The index stores term frequencies and document offsets. Queries are AND-based with prefix matching on the last token. Search results link to the section within the page when a heading is nearby.

Stable API

The config format (a single TOML file) won't change in 1.x. The theme API (a directory of HTML templates with defined slot names) won't change. If you write a theme for 1.0 it will work with 1.9.

I deliberately kept the feature set small to make this promise credible. StoneBark doesn't do image processing, doesn't have a plugin system, and doesn't support arbitrary data sources. What it does, it should do correctly and stably.


Also: Building static full-text search without Lunr or Pagefind