7 releases (breaking)

0.5.0 Feb 4, 2024
0.4.0 Aug 29, 2022
0.3.2 May 2, 2022
0.2.0 Apr 30, 2022
0.0.0 Jan 13, 2022

#140 in Caching


Used in moella

LGPL-3.0-or-later and GPL-2.0-or-later

58KB
1.5K SLoC

crates.io version lines of code license

Kvarn search

Uses elipdotter to provide search capabilities for a Kvarn host.

Uses the file system and prepare_single extensions to get all documents to index.

To get more info, check out the section about this extension in my article about elipdotter.

This means this implementation currently does not crawl the local site.

This extension provides an endpoint which returns the result in JSON format. The scheme is described on icelk.dev.

For an example of a frontend, check out this portion of the overview at kvarn.org.

Cargo features

Enable the wordpress-sitemap feature to automatically index a WordPress site. You also have to set the option index_wordpress_sitemap option in Options to enable it.

Versions

  • 0.1.x - kvarn v0.4
  • 0.2.x - kvarn v0.4
  • 0.3.x - kvarn v0.4
  • 0.4.x - kvarn v0.5.x
  • 0.5.x - kvarn v0.6.x

Changelog

v0.5.0

  • Support Kvarn v0.6.0
  • Update elipdotter & scraper.

v0.4.0

  • Add hashes # to headings in preview (like headings are written in MarkDown)
  • Ignore Kvarn Chute generated table of content when indexing
  • Update to kvarn v0.5.0
  • Updated notify dependency

v0.3.2

  • Fixed issue when files has non-alphanumerical characters in them.

v0.3.1

  • Removed unwanted debugging.

v0.3.0

  • Updated elipdotter
    • See it's changelog for the comprehensive improvements to search results and performance.
  • Added option kind to choose the type of index. Using Simple takes less memory. Using Lossless is 10x faster but uses more memory (2-4x).

v0.2.0

  • Updated elipdotter
    • See it's changelog for the comprehensive improvements to search results and memory performance.
  • Added option ignore_paths to filter out documents from being indexed.

Development

Since this is used by some projects which require the git version of Kvarn, this requires Kvarn to be cloned at ../kvarn during development.

License

kvarn-search is licensed under the GNU LGPLv3. All contributions must also be.

Dependencies

~13–23MB
~328K SLoC