Vedec is an ElasticSearch-based indexer and search engine for Ogrodje.
The engine is hacked and fine-tuned to work with the Slovenian language.
It uses the Hunspell token filter and hunspell - spell checker and morphological analyser.
Additional Slovenian language support is provided via custom elasticsearch-analysis-lemmagen built with jLemmaGen.
The indexer is tuned to extract data from HyGraph - GraphQL-based Headless CMS. The EpisodesIndexDefinition.scala keeps the index configuration and mapping, and the search query is defined in EpisodesIndexQueries.scala
docker pull ghcr.io/ogrodje/elasticsearch:latest
docker pull ghcr.io/ogrodje/vedec:latestsbt Docker / publishLocal
./bin/og-dev.sh build
./bin/og-dev.sh up # all services
# individual (ElasticSearch needs to be booted)
docker run -ti --rm ghcr.io/ogrodje/vedec server
docker run -ti --rm ghcr.io/ogrodje/vedec index
curl -sS -XGET 'Content-Type: application/json' http://localhost:4442/search -d '{}' | jq . | morecurl -sS -XGET 'Content-Type: application/json' http://localhost:4442/query\?query\=izzivi | jq .