Skip to content

Releases: nullism/trunkcms

Release list

v0.2.0

Choose a tag to compare

@nullism nullism released this 03 Oct 02:52

Search

Sites can now have a search box. Each build writes /search.json, an index of published posts (and pages, unless turned off). The browser downloads it the first time someone searches, so there's no search endpoint and static exports get search too.

  • Off unless enabled, so existing sites don't change. Add search: { enabled: true } to site.yaml or tick Search box on the site in Settings. New sites start with it on.
  • Drafts and scheduled posts are never indexed.
  • Ranking: BM25, with the last word also matching as a prefix while you type. Case and accents are ignored ("CAFÉ" finds "café").
  • title_boost (default 1): a query word in a title beats any number of mentions in the body, while posts matching more of the query can still win.
  • Tuning: pages, stopwords, keep and min_kw_length, all on the Settings page. The dashboard shows the index size, about 160 KB gzipped for 300 posts of 1,000 words.
  • Custom themes: themes that replace base.html can add {{template "search" .}}, or build their own UI on the searchIndex template function.

See DESIGN.md §4.2 for the index format and ranking details.

Other

  • trunkcms is now MIT licensed.

Docker: nullism/trunkcms:0.2.0 (also latest)