Sonic
A search index in about 30 MB of RAM, when you need less than you think.
Sonic is a deliberately minimal Rust search index: it stores identifiers rather than documents, so you query Sonic for matching IDs and fetch the actual records from your own database. That design keeps memory in the tens of megabytes where a conventional engine wants gigabytes, and it makes Sonic a serious option for small services, edge deployments and anything running on hardware you would not consider adequate for search. MPL-2.0, around 21.3k stars. It is not trying to be Algolia — it has no faceting and no relevance tuning — and being clear about that is the point of listing it.
What it does well
- +Extraordinarily light — tens of megabytes rather than gigabytes
- +Fast enough for most real workloads despite the footprint
- +MPL-2.0, simple to deploy, almost nothing to operate
- +Ideal for edge, embedded and small-service deployments
Where it falls short
- −Returns identifiers only — you fetch the documents yourself
- −No faceting, no aggregations, no relevance tuning
- −Minimal ecosystem and few integrations
- −Wrong tool if search is a core product surface
Sonic as an alternative to
Where Sonic shows up in our comparisons, and how it ranked.
Sonic head-to-head
Straight comparisons against the tools people weigh it against.