pagefind
Pagefind — static search library: Rust CLI indexes built HTML, ships chunked WASM index; sub-300 KB payloads for 10k-page sites. Zero config, per-section results, multilingual via lang attribute; Snowball stemming incl. Polish + Czech.
Defuddle capture of the project README, 2026-09-13.
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
View all files | ||||
Pagefind
Pagefind is a fully static search library that aims to perform well on large sites, while using as little of your users’ bandwidth as possible, and without hosting any infrastructure.
The full documentation on using Pagefind can be found at https://pagefind.app/.
Summary
Static-site search that indexes at build time and serves a chunked WASM/UI bundle — no server, no index hosting.
Learnings
- Chosen over FlexSearch/ZBSearch for the garden after a measured pl-vs-en stemming shootout (spec 0006; Pagefind vs ZBSearch). The general answer for non-Quartz sites too — SSG-agnostic post-build HTML indexing, one binary, zero server; Blume ships it behind a flag for large sites.
Gotchas
- Forced
--force-language plcollapses English inflections (searching120→3 hits) — majority-EN corpus takesen.
Hands-on
Garden — the live search on garden.h + brain since spec 0006; injected into the Quartz sidebar by scripts/integrate-pagefind.sh.