# Tachyon > Tachyon is an open-source search engine designed for fast full-text search without the operational complexity of heavyweight search infrastructure. Tachyon is an open-source, typo-tolerant full-text search engine distributed as a single Rust binary. It adds BM25 relevance ranking, typo tolerance, filters, facets, sorting, and autocomplete to an application without a JVM cluster or a distributed coordination layer. - Install: `docker run -p 8108:8108 adikeshri/tachyon` - Source: https://github.com/adikeshri/tachyon - License: Apache-2.0 - Full page-by-page content: https://tachyon.adityakeshri.com/llms-full.txt - Any docs or API page as Markdown: append `.md` to its URL ## Docs # Documentation - [Introduction](/docs): What Tachyon is, what it isn't, and where to go next. - [Getting Started](/docs/getting-started): Requirements and the shortest path to a working search index. - [Installation](/docs/installation): Run Tachyon with Docker, or build it from source. - [Quickstart](/docs/quickstart): Create a collection, index documents, and search — end to end. - **Concepts** - Concepts - [Concepts](/docs/concepts): The vocabulary Tachyon uses — collections, documents, fields, segments, and more. - [Inverted Index](/docs/concepts/inverted-index): The core data structure behind full-text search — how Tachyon maps tokens to the documents that contain them. - [Tokenization](/docs/concepts/tokenization): How Tachyon turns text fields into the tokens its inverted index is built from. - [Block-max WAND](/docs/concepts/block-max-wand): The query pruning strategy Tachyon uses for multi-term search — same top-K results, less work. - [Write-Ahead Log](/docs/concepts/write-ahead-log): How Tachyon guarantees every acknowledged write survives a crash — the append-only log every write hits before it's confirmed. - [Segment Merging](/docs/concepts/segment-merging): Why segment count grows over time, why that alone slows queries down, and how Tachyon's background tiered merge bounds it. - [Collections](/docs/collections): Schemas, field types, and flags — and the endpoints that manage them. - [Documents](/docs/documents): Indexing, fetching, and deleting individual documents. - **Search** - [Searching](/docs/searching): Query parameters, pagination, and the shape of search results. - [Filtering](/docs/filtering): Narrow search results with boolean expressions over structured fields. - [Sorting](/docs/sorting): Order search results by field values or by relevance. - [Faceting](/docs/faceting): Count matching documents per field value, over the whole result set. - [Typo Tolerance](/docs/typo-tolerance): How Tachyon matches misspelled queries, and how to tune it. - [Relevance & BM25](/docs/relevance-bm25): How Tachyon ranks matching documents. - [Persistence](/docs/persistence): How Tachyon keeps data durable and recovers from a crash. - **SDKs** - SDKs - [SDKs](/docs/sdks): Official, fully-typed client libraries for TypeScript, Python, and C#. - [TypeScript / JavaScript](/docs/sdks/typescript): The official tachyon-sdk client for TypeScript, JavaScript, and any fetch-capable runtime. - [Python](/docs/sdks/python): The official tachyon-sdk client for Python. - [C# / .NET](/docs/sdks/csharp): The official tachyon-sdk client for .NET. - **Guides** - Guides - [Add search to a Next.js app](/docs/guides/nextjs): Index your data with the tachyon-sdk on the server, and query it from a route handler or server action. - [Build a search box in React](/docs/guides/react): A debounced, typo-tolerant search input backed by Tachyon, with no framework beyond React itself. - [Run Tachyon with Docker Compose](/docs/guides/docker-compose): A Compose file for local development and small deployments — Tachyon plus your application, wired together with a persistent volume. - [Run Tachyon on Kubernetes](/docs/guides/kubernetes): A StatefulSet, Service, and PVC for running Tachyon on Kubernetes — Tachyon has no clustering, so this runs exactly one pod. - **Operations** - [Configuration](/docs/configuration): Every CLI flag, environment variable, and auth setting Tachyon supports. - [Deployment](/docs/deployment): Running Tachyon in production with Docker. ## API Reference # API Reference - [API Reference](/api): Every Tachyon REST endpoint, its parameters, and its response shape. - [Collections](/api/collections): Create, list, fetch, and delete collections. - [Documents](/api/documents): Index, fetch, and delete documents within a collection. - [Search](/api/search): Query a collection, and get autocomplete suggestions. - [Configuration](/api/configuration): Health, metrics, and query analytics — operational endpoints, not collection settings. - [Errors](/api/errors): Error response shape and the full list of error codes. ## Compare # Compare - [Compare Tachyon](/compare): How Tachyon compares to Typesense, Meilisearch, Elasticsearch, OpenSearch, Algolia, and Postgres full-text search. - [Tachyon vs. Typesense](/compare/typesense): How Tachyon and Typesense compare on architecture, memory, licensing, and query latency — with a fully-disclosed preliminary benchmark. - [Tachyon vs. Meilisearch](/compare/meilisearch): How Tachyon and Meilisearch compare on relevance model, storage engine, license, and feature surface. - [Tachyon vs. Elasticsearch](/compare/elasticsearch): How a single-binary Rust search engine compares to the JVM-based, distributed-by-default Elasticsearch. - [Tachyon vs. OpenSearch](/compare/opensearch): How a single-binary Rust search engine compares to OpenSearch, the AWS-led, Apache-2.0 fork of Elasticsearch. - [Tachyon vs. Algolia](/compare/algolia): Self-hosted, open-source search versus Algolia's closed-source, fully-managed search-as-a-service. - [Tachyon vs. PostgreSQL Full-Text Search](/compare/postgres-full-text-search): When Postgres's built-in tsvector/tsquery search is enough, and when a dedicated search engine like Tachyon earns its keep. ## Alternatives # Alternatives - [Alternatives](/alternatives): Honest roundups of search-engine alternatives — including options beyond Tachyon — for Algolia, Elasticsearch, and lightweight/small-team use cases. - [6 open-source Algolia alternatives, compared](/alternatives/algolia-alternatives): Self-hosted, open-source options if you want Algolia-style search UX without a usage-based bill to a third party. - [5 self-hosted Elasticsearch alternatives for application search](/alternatives/elasticsearch-alternatives): Lighter-weight, self-hosted options when you need application search — not a log analytics platform — and don't want to run a JVM cluster for it. - [The lightest-weight search engines for small teams and side projects](/alternatives/lightweight-search-engines): Search engines that run comfortably on a single small instance, for teams who don't want to operate a cluster for a side project or an early-stage product. ## Blog # Blog - [Blog](/blog): Engineering notes on how Tachyon is built — relevance, storage, and honest benchmark results. - [Benchmarking Tachyon against Typesense: the numbers, and their limits](/blog/benchmarking-tachyon-against-typesense): A single, fully-disclosed run comparing Tachyon and Typesense 30.2 at 100K, 1M, and 5M documents — what it found, and exactly what it doesn't prove yet. - [Block-max WAND, explained](/blog/block-max-wand-explained): How Tachyon skips whole blocks of postings during multi-term search without changing the ranked results — the same top-K, computed in less work. - [Typo-tolerant search with Damerau-Levenshtein edit distance](/blog/typo-tolerance-with-edit-distance-automata): What Damerau-Levenshtein edit distance actually measures, why transpositions matter for real-world typos, and why length-scaled thresholds beat a single fixed tolerance. - [Why we shipped a search engine as a single binary](/blog/why-a-single-binary): The case against a distributed system as the default starting point for application search — and what a single-node design actually costs you.