If you are using Antora 3, you should use the Antora Lunr extension (package: @antora/lunr-extension
), which is an official Antora project.
This repository will go into maintenance mode for users who have not yet transitioned from Antora 2 to Antora 3. After some time, the repository will be archived.
This site generator is a copy of the default site generator that in addition produces a Lunr index that can be used in your documentation UI. Lunr provides a great search experience in your documentation site without the need for external, server-side, search services.
Antora is a modular static site generator designed for creating documentation sites from AsciiDoc documents. Its site generator pipeline aggregates documents from versioned content repositories and processes them using Asciidoctor.
Install the site generator. Open a terminal and type:
$ npm i -g antora-site-generator-lunr
When generating your documentation site, use the --generator
option:
$ DOCSEARCH_ENABLED=true DOCSEARCH_ENGINE=lunr NODE_PATH="$(npm -g root)" antora --generator antora-site-generator-lunr site.yml
NOTE: The NODE_PATH
assignment is necessary to ensure Antora can locate node modules install globally.
Depending on your environment, you may find that this assignment is unnecessary.
If you've installed Antora globally using Yarn, you may need to add "$(yarn global dir)/node_modules"
to the NODE_PATH
environment variable instead.
Please read the documentation to enable the search component in your documentation UI.
The Docker image is built upon the Antora's official Docker image and should be used as a replacement. For example, instead of running:
$ docker run -u $(id -u) -v $PWD:/antora:Z --rm -t antora/antora:2.3.4 antora-playbook.yml
You will run:
$ docker run -u $(id -u) -v $PWD:/antora:Z --rm -t ggrossetie/antora-lunr antora-playbook.yml
The image sets DOCSEARCH_ENABLED=true
and DOCSEARCH_ENGINE=lunr
environment variables.
When executing docker run
, you can overwrite any variable defined in the image.
For example:
$ docker run --env DOCSEARCH_ENABLED=false # ...
Moreover, the site generator is automatically configured on the antora
command (i.e. --generator antora-site-generator-lunr
).
When installing this generator globally (i.e., npm i -g
), it also installs a private copy of Antora (minus the CLI).
Thus, to upgrade the copy of Antora this site generator uses, you need to reinstall this package.
Upgrading Antora alone isn't sufficient.
To upgrade this site generator and Antora, open a terminal and type the following commands:
$ npm uninstall -g antora-site-generator-lunr @antora/cli @antora/site-generator-default
$ npm i -g antora-site-generator-lunr @antora/cli @antora/site-generator-default
These commands ensure you have the latest version of both the site generator and Antora regardless of whether you're using this site generator.