Freedom251 › Code Search Tools
Zoekt

What Zoekt is
Zoekt is a free, open-source text search engine intended for source code. It finds substring and regular-expression matches, and Boolean operators let users combine terms. Searches can cover one repository or repositories across a large codebase. Results use code-related ranking signals, including whether a match is on a symbol. The project says its trigram indexing and syntactic parsing work well for a variety of programming languages. Zoekt can be run through command-line tools or through indexserver and webserver services. These services can sync repositories from a code host and make them searchable through a web UI or API. The project documents indexing a GitHub organization and periodically fetching and indexing its repositories. Its webserver can expose a JSON search API and a gRPC API for structured queries and streaming results. A published container image at ghcr.io/sourcegraph/zoekt includes Zoekt binaries, git, and universal-ctags. The repository lists an Apache-2.0 license. Its design document describes a public-facing HTTPS deployment without authentication, and identifies repository credentials, TLS certificates, and query logs as sensitive data. It also describes seccomp-based sandboxing as a mitigation for risks from processing indexed code with ctags.
Who it suits
Zoekt suits developers and organizations that need source code search across one or many repositories and can operate self-hosted tools or services. It also fits teams that want search exposed through a web interface, JSON API, or gRPC API.
What it does well
- Searches substrings, regular expressions, and Boolean queries
- Covers individual repositories or larger codebases
- Ranks results with code-related signals, including symbol matches
- Offers command-line tools, web UI, JSON API, and gRPC API
- Free under the Apache-2.0 license
What to know first
- Designed for self-hosted deployment
- Design document describes public HTTPS deployment without authentication
- Content size per shard is capped at 1G
Limits
The design document caps content size per shard at 1G because shard offsets use uint32. It describes public-facing HTTPS deployment without authentication.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| Free | Apache-2.0 licensed · self-hosted commands and services | Free |
As github.com lists them, read 7 Oct 2026. The maker's own page has the final word.
Getting started
- Open the Zoekt GitHub repository
- Choose command-line tools or the indexserver and webserver services
- Use the documented GitHub organization indexing setup if indexing an organization
- Run the services to sync repositories and make them searchable through the web UI or API
- Use the published container image at ghcr.io/sourcegraph/zoekt if preferred
Verdict
Choose Zoekt if you need open-source code search across repositories and can run its commands or services yourself. Its search options, web interface, and APIs support different ways to query indexed code. Teams that require authentication in a public-facing deployment should account for the design document's description of HTTPS without authentication.
Questions
Does Zoekt cost anything?
Zoekt is free and open source under the Apache-2.0 license.
Where can Zoekt run?
Its listed platforms are API, self-hosted, and web. It can be used through command-line tools or indexserver and webserver services.
What search types does Zoekt support?
It supports substring and regular-expression matching, with Boolean query operators.
Can Zoekt search multiple repositories?
Yes. It can search an individual repository or search across many repositories in a large codebase.
What APIs are available?
The webserver can expose a JSON search API and a gRPC API for structured queries and streaming results.
Who makes Zoekt?
The project repository is at github.com/sourcegraph/zoekt.
Facts from Zoekt's own pages
- API
- The webserver can expose a JSON search API and a gRPC API for structured queries and streaming search results. · github.com, 7 Oct 2026
- Code host setup
- The README documents indexing a GitHub organization and periodically fetching and indexing its repositories. · github.com, 7 Oct 2026
- Container
- The project publishes a container image at ghcr.io/sourcegraph/zoekt containing Zoekt binaries, git, and universal-ctags. · github.com, 7 Oct 2026
- Index size limit
- The design document says shard offsets use uint32 and caps content size per shard at 1G. · github.com, 7 Oct 2026
- Languages
- The project says its trigram indexing and syntactic parsing work well for a variety of programming languages. · github.com, 7 Oct 2026
- License
- The repository lists the Apache-2.0 license. · github.com, 7 Oct 2026
- Purpose
- Zoekt is a text search engine intended for source code. · github.com, 7 Oct 2026
- Ranking
- Search results are ranked using code-related signals, including whether a match is on a symbol. · github.com, 7 Oct 2026
- Repositories
- It can search an individual repository or search across many repositories in a large codebase. · github.com, 7 Oct 2026
- Search
- It supports fast substring and regular expression matching, with Boolean query operators. · github.com, 7 Oct 2026
- Security
- The design document describes a public-facing deployment using HTTPS without authentication and identifies repository credentials, TLS certificates, and query logs as sensitive data. · github.com, 7 Oct 2026
- Security mitigation
- The design document says seccomp-based sandboxing mitigates the risk from ctags processing indexed code. · github.com, 7 Oct 2026
- Ways to use it
- Zoekt can be used through command-line tools or through indexserver and webserver services that sync repositories from a code host and search them through a web UI or API. · github.com, 7 Oct 2026
Where Zoekt stands on Freedom251
- Code Search Tools#21 of 42