For a self-hosted Algolia alternative, the first results are manticoresoftware/manticoresearch, meilisearch/meilisearch (Meilisearch is a self-hosted, API-first search engine that delivers instant typo-tolerant full-text search with faceted filtering and autocomplete, covering all the site-search features you are looking for) and typesense/typesense (Typesense is a self-hosted search engine that directly addresses this intent: it offers full-text search with typo tolerance, faceting, a RESTful API, instant search, and relevance tuning, all designed for site search—exactly the Algolia-like feature set you're looking for). prabhatsharma/zinc and elastic/elasticsearch round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Open-source indexing and search platforms that provide Algolia-like functionality for your own hosted websites.
Manticoresearch is a high-performance search engine and database designed for indexing and retrieving large datasets. It functions as a full-text search engine, a vector search database, and a SQL-based search database, providing a distributed search cluster architecture. The system provides an alternative to the Elasticsearch stack, offering a compatible API for indexing and searching structured and unstructured data. It distinguishes itself by supporting multiple retrieval methods, including vector matching for similarity search, geospatial queries, and traditional full-text ranking. The p
Manticore Search is a self-hosted full-text search engine with a RESTful API, fuzzy search support, faceted filtering, and relevance tuning via BM25 ranking, making it a direct and comprehensive backend for powering search features like Algolia's, deployable on your own infrastructure.
Meilisearch is a Rust-based search engine providing typo-tolerant full-text and vector-based semantic search with real-time conversational capabilities.
Meilisearch is a self-hosted, API-first search engine that delivers instant typo-tolerant full-text search with faceted filtering and autocomplete, covering all the site-search features you are looking for.
Typesense is a distributed search engine designed to provide sub-millisecond query latency across massive datasets. It functions as both a high-performance indexing and retrieval engine and a comprehensive search experience platform, offering built-in typo tolerance and tools for managing relevance through synonym configuration, result curation, and complex filtering. The platform distinguishes itself by utilizing in-memory indexing to maintain high-throughput data retrieval and integrating vector database capabilities to support semantic similarity searches. It ensures data consistency and h
Typesense is a self-hosted search engine that directly addresses this intent: it offers full-text search with typo tolerance, faceting, a RESTful API, instant search, and relevance tuning, all designed for site search—exactly the Algolia-like feature set you're looking for.
Zinc is a high-performance full-text search engine written in Go. It provides a schema-less document index that organizes arbitrary datasets into searchable structures without requiring a predefined data format. The engine features an API compatible with Elasticsearch for indexing and querying data, which facilitates the ingestion of single and bulk records. It is designed as an in-process search engine that embeds indexing and retrieval logic within a single binary to operate with minimal system resource overhead. The system includes a built-in web-based management interface for executing s
Zinc is a self-hosted full-text search engine with an Elasticsearch-compatible API and a built-in web management interface, directly matching the need for a self-hosted site search tool, though the specific support for typo tolerance and faceting is implied through its Elasticsearch compatibility rather than explicitly stated.
Elasticsearch is a distributed search engine and document store designed for the high-performance indexing and retrieval of massive volumes of unstructured data. It functions as a centralized analytics platform, providing a schema-flexible architecture that organizes information into searchable indices while maintaining global cluster state through a distributed consensus mechanism. The platform distinguishes itself through its integrated approach to observability, security, and advanced analytics. It combines full-text, vector, and hybrid search capabilities with machine learning-driven insi
Elasticsearch is a distributed search engine with full-text search, fuzzy/typo-tolerant queries, faceted aggregation, a RESTful API, and self-hosting — covering all the Algolia-like features this search asks for, though it is a general-purpose platform rather than a dedicated site-search appliance.
Riot is a Go-based distributed search engine and indexing server designed for full-text indexing and retrieval. It functions as a retrieval system that sorts documents by relevance using BM25 ranking algorithms, term frequency, and inverse document frequency. The engine provides specialized support for the Chinese language, featuring concurrent text segmentation and phonetic Pinyin mapping to match romanized input with characters. It utilizes a distributed architecture that employs hash-based index sharding to balance data load and throughput across multiple server nodes. The system covers a
Riot is a Go-based distributed full-text search engine with BM25 ranking and relevance tuning, making it a valid self-hosted search tool, but it lacks explicit typo tolerance, faceted search, and autocomplete features that Algolia-style site search typically requires.
Sonic is a high-performance, lightweight search backend designed to provide real-time full-text search and autocomplete capabilities for applications. It functions as a persistent indexing server that maps text terms to object identifiers, allowing developers to integrate rapid search functionality without storing raw document content directly within the search engine. The system distinguishes itself through a specialized graph-based index that enables real-time word prediction and typo correction. Communication is handled via a custom, low-latency binary protocol over raw TCP sockets, which
Sonic is a self-hosted full-text search backend with typo tolerance and autocomplete, fitting the core search need, but it uses a custom binary protocol rather than a RESTful API and lacks faceted search and relevance tuning, so it covers only part of the requested feature set.
RediSearch is a Redis module that adds secondary indexing, full-text search, aggregation, and vector similarity search directly into the in-memory data store. It operates as an in-process search engine, extending the core key-value store with capabilities for indexing hash and JSON documents, enabling fast field-level lookups beyond primary key access. The module provides a full-text search engine built on inverted indexes, supporting stemming, fuzzy matching, and relevance scoring via tf-idf. It also includes a vector similarity search engine using a Hierarchical Navigable Small World graph
RediSearch is a Redis module that turns your in-memory store into a full-text search engine with fuzzy matching, faceted aggregation, and relevance scoring, making it a strong fit for self-hosted site search — though it communicates via the Redis protocol rather than a RESTful API.
Zincsearch is a high-performance, self-hosted full-text search engine and database written in Go. It provides a lightweight infrastructure for indexing and searching unstructured text data, specializing in log and event analysis through a schemaless indexing model. The system is designed as a resource-efficient alternative to heavier search infrastructure, featuring an API surface compatible with Elasticsearch for indexing and querying documents. It distinguishes itself by packaging the entire server and its built-in web search interface into a single statically linked binary. The engine cov
Zincsearch is a self-hosted full-text search engine with an Elasticsearch-compatible API that can be adapted for site search, but its primary focus on log and event analysis means the description does not confirm the Algolia-like features (typo tolerance, faceting, autocomplete) you listed, making it a valid but not comprehensive fit.
Toshi is a full-text search engine and library implemented in Rust, designed to manage and query large-scale structured datasets. It functions as a distributed search platform that enables high-speed information retrieval across massive collections of data. The system distinguishes itself through an architecture built for high-throughput ingestion and parallel query execution. It utilizes an actor-model concurrency framework to coordinate worker processes and employs distributed sharding to partition index segments across multiple nodes. To maintain performance and data integrity, the engine
Toshi is a full-text search engine written in Rust that fits the core need for a self-hosted search engine, though the sparse description does not confirm the specific Algolia-like features such as typo tolerance and faceting that you are looking for.
Orama is a search engine and vector database that provides full-text indexing, geospatial calculations, and semantic vector storage. It functions as an LLM retrieval engine designed to provide grounded context to language models for conversational interfaces. The project implements hybrid search by combining dense vector embeddings with inverted keyword indices to retrieve documents based on both semantic meaning and exact text matches. It utilizes a WebAssembly module to execute search logic across different JavaScript environments and platforms. The system covers a broad range of retrieval
Orama is a full-text search and vector database library for Node.js environments, providing core search features like typo tolerance and faceting, but it is a library rather than a standalone search service with a RESTful API, so it would need additional work to serve as a site search engine.
MiniSearch is a JavaScript full-text search library with fuzzy search, autocomplete, and filtering—ideal for adding search to a site—but it is a library you embed, not a standalone self-hosted search engine with its own REST API.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| manticoresoftware/manticoresearch | 11.8K | C++ | GPL-3.0 | |
| meilisearch/meilisearch | 58.1K | Rust | NOASSERTION | |
| typesense/typesense | 25.3K | C++ | gpl-3.0 | |
| prabhatsharma/zinc | 17.9K | Go | NOASSERTION | |
| elastic/elasticsearch | 77K | Java | NOASSERTION | |
| go-ego/riot | 6.1K | Go | Apache-2.0 | |
| valeriansaliou/sonic | 21.2K | Rust | MPL-2.0 | |
| redisearch/redisearch | 6.2K | C | NOASSERTION | |
| zincsearch/zincsearch | 17.9K | Go | NOASSERTION | |
| toshi-search/toshi | 4.3K | Rust | MIT |