bleve
A modern text indexing library for go
Import one package, build an index with three lines of code, query for documents with another three lines. Bleve includes general-purpose analyzers as well as pre-built text analyzers for the following languages, Danish, Dutch, English, Finnish, French, German, Hungarian, Italian, Norwegian, Persian, Portuguese, Romanian, Russian, Sorani, Spanish, Swedish, Thai, and Turkish. Support for aggregating facet information across search results. Supported facet types include Terms Facet, Numeric Range Facet, and Date Range Facet. By indexing your data with bleve you gain the ability to compose query types such as Term, Phrase, Match, Match Phrase, Prefix, Conjunction, Disjunction, Boolean, Numeric and Date Ranges, as well as Query String. Industry standard tf-idf scoring with query time boosting. Includes support for highlighting matching text within document fragments.