Elasticlunr is a small, full-text search library for use in the Elixir environment. It indexes JSON documents and provides a friendly search interface to retrieve documents.
The current implementation of the IndexManager loses state when an application is restarted. So, a flexible storage mechanism is put in place to write and load indexes. On application startup, all indexes in the storage are preloaded.
A Disk storage provider is provided, it works with your machine/server disk, meaning it writes to, and loads from the local disk. The storage layer is flexible and configurable, you can choose to build a custom provider that writes to any storage service of your choice or even a database. The default storage provider used is Blackhole, it does nothing.
TODO
[x] Every CRUD function on IndexManager calls an appropriate function on the Storage module.
Overview
The current implementation of the
IndexManager
loses state when an application is restarted. So, a flexible storage mechanism is put in place to write and load indexes. On application startup, all indexes in the storage are preloaded.A
Disk
storage provider is provided, it works with your machine/server disk, meaning it writes to, and loads from the local disk. The storage layer is flexible and configurable, you can choose to build a custom provider that writes to any storage service of your choice or even a database. The default storage provider used isBlackhole
, it does nothing.TODO
IndexManager
calls an appropriate function on theStorage
module.Disk
storage provider