Personal document search engine.
The problem with a personal search engine is that most of the time you do not have a well formed long-tail query in mind. You have a few keywords, mostly just one. An interface that lets you explore those keywords/tags is thus vastly superior, as it can narrow down your query step by step.
To run the Node apps locally with ES in Docker:
$ nvm use # optional
$ npm install
$ npm run dev # http://localhost:3000
To run the Node apps and ES in Docker:
$ docker-compose -f docker-compose.yml -f docker-compose.prod.yml up
3000|80
: React app (public)9000
: Express api (public only in dev mode)9200
: ElasticSearch instance (public only in dev mode)
Will reset the search index if it exists and create a new one:
$ curl --request DELETE --url 'http://localhost:3000/api/index'
Setup docker
to not run as sudo: https://docs.docker.com/install/linux/linux-postinstall/
Increase heap size: $ sudo sysctl -w vm.max_map_count=262144
https://github.com/nextapps-de/flexsearch (or https://github.com/krisk/fuse). How fast would these libraries work in the browser (client-side) and how accurate would the results be?