🔎 Impossibly fast web search, made for static sites.
This is the second beta release of the Stork 2.0.0 release branch.
The beta signifier means that the release is documented and usable, though the API is not final and not all features have been implemented yet. Until 2.0.0 is released, the source code is stored in the v2 branch of the repository.
The documentation is available here.
This beta release includes the following changes compared to beta 1:
This is the first beta release of the Stork 2.0.0 release branch. The beta signifier means that the release is documented and usable, though the API is not final and not all features have been implemented yet.
Until 2.0.0 is released, the source code is stored in the v2 branch of the repository.
The documentation is available here.
Note In this beta, you'll have to explicitly register the WASM blob with a custom URL:
stork.initialize("https://files.stork-search.net/releases/latest/stork.wasm")
2.0.0 greatly simplifies the search algorithm. As a result, the indexing binary, WASM blob, and Javascript file are all smaller than the 1.x branch. Searches are faster. The configuration API is more powerful.
The following features are still not working:
Currently, only search indexes made with the 2.0.0 indexer binary can be used with the 2.0.0 web code. This lets me greatly simplify the support matrix, so I'm inclined to leave it that way; please let me know if this would be troublesome for your workflow.
Please give me feedback if you have any!
The following artifacts have been uploaded to the Stork CDN:
https://files.stork-search.net/releases/v2.0.0-beta.1/stork.js
https://files.stork-search.net/releases/v2.0.0-beta.1/stork.wasm
https://files.stork-search.net/releases/v2.0.0-beta.1/stork.css
https://files.stork-search.net/releases/v2.0.0-beta.1/stork-ubuntu-20-04
https://files.stork-search.net/releases/v2.0.0-beta.1/stork-ubuntu-22-04
https://files.stork-search.net/releases/v2.0.0-beta.1/stork-macos-11
https://files.stork-search.net/releases/v2.0.0-beta.1/stork-macos-12
https://files.stork-search.net/releases/v2.0.0-beta.1/federalist.st
https://files.stork-search.net/releases/v2.0.0-beta.1/3b1b.st
Despite the version number, this is the first Stork 2.0.0 alpha candidate, released from the v2 branch of the repository.
2.0.0 greatly simplifies the search algorithm. As a result, the indexing binary, WASM blob, and Javascript file are all smaller than the 1.x branch. Searches are faster. The new index format includes support for sharded indexes, meaning future indexes will be able to be made up of multiple size-limited files that get loaded dynamically as your user types. Other features, like metadata filters, will also be available in the 2.x branch.
Many things are not working currently. The config API is different, but there doesn't yet exist documentation for the new format. Stemming, title matching, and highlighting are broken, and displayed excerpts are not trimmed to word boundaries. Some settings aren't wired up properly. Many parts of the release process are not working.
Currently, only search indexes made with the 2.0.0 indexer binary can be used with the 2.0.0 web code. This lets me greatly simplify the support matrix, so I'm inclined to leave it that way; please let me know if this would be troublesome for your workflow.
Please feel free to try out the new artifacts (attached to the Github release) and let me know what you think!
x
SVG is now horizontally centered within the button. (Thanks @kkwteh!)I'm still hard at work on 2.0.0! The new version's key feature will be sharded search indexes, but implementing this has meant that I rethink the data format of the serialized index to support loading single chunks at a time while keeping the search interface snappy. Maintaining Stork's speed and resource size while redesigning the data format has proven difficult.
In personal news, I got engaged to be married over the holidays, which while exciting, has meant I have less time to work on Stork than I hoped. I'm still around and looking at the repo every day (despite the slowed progress of releases) and hope to get a 2.0.0 RC into your hands before the end of March.
The RC will be published to Github for all to try, but please let me know if you are particularly interested in poking at it! I'm happy to help walk anyone through the changes.
Best, James
transformResultUrl
, which, when set, transforms search result URLs from what's described in the search index to what gets output in the DOM. (Thanks, @ArsenArsen!)output.excerpts_per_result
to 0 in your configuration file will now enable index serialization optimizations that can reduce your index filesize by 20-50%. Note that this will make all excerpts disappear from the search UI.exclude_html_selector
configuration option were not being correctly excluded. (Thanks, @ezekg!)files.stork-search.net
CDN will no longer be updated. From this release going forward, you will need to change your <script>
tags and <link rel="stylesheet">
tags to upgrade to a new version of Stork. See this Github announcement for more details.--json
flag for the search
subcommand is now deprecated, as it did nothing in previous versions of Stork.search
subcommand, --format <VALUE>
, now determines how search results will be displayed in the terminal. The default value is json
, which will display the search results in the JSON format understood by the browser module. A new value, pretty
, will format the search results in a readable, understandable way. In the 2.0.0 Stork release, pretty
will be the default value for this flag.edible
and edible-dark
, have been added. See https://stork-search.net/themes for examples and instructions on how to integrate them into your project.console.log
from the Javascript application--timings
flag previously did nothing. Now, when included with the build
or search
subcommands, timing information will be displayed at the end of the terminal output via stderr.alt
and title
attributes on HTML elementsoutput.save_nearest_html_id
, that, when set to true, will index the nearest HTML IDs for each word. The web interface will link to that ID; clicking on that search result will jump to the text's location on the page.flat
Bug fixes:
stork-wrapper
container (#176)