#1010th of 17 in RAG and search
orama
In-process full-text, vector and hybrid search library for JavaScript
- Stars
- 10.6k
- License
- custom license
- Last commit
- Jul 2026
- Last release
- Dec 2025
- Language
- TypeScript
10,223 on 21 Apr 202610,608 on 10 Nov 2026
From GitHub's daily star counts.
Checked on GitHub.
Overview
Orama is a TypeScript search engine that runs in the browser, Node, Deno or Bun. It indexes documents against a typed schema and supports BM25 full-text, vector and hybrid search, plus filters, facets, geosearch and typo tolerance. An AnswerSession API builds RAG chat on top, calling OpenAI through an optional secure proxy plugin.
Who it is for: JavaScript developers adding search or RAG chat to web apps and docs sites
Strengths
- Runs in-process in browser, Node, Deno and Bun with no server required
- Full-text, vector and hybrid modes in one API with BM25, facets and geosearch
- Stemming and tokenization for 30 languages
- Plugin system with official plugins for embeddings, persistence, Docusaurus, Astro and Nextra
Weaknesses
- Index lives in memory; persistence needs a separate plugin
- Vector search needs embeddings supplied or generated via a plugin
- Chat answers depend on OpenAI models via the secure proxy plugin
- Library only, not a standalone search server with its own HTTP API
What it needs
- TypeScript, OpenAI chat models via secure proxy (e.g. gpt-4o-mini), TensorFlow.js embeddings (512-dimension)
- Needs OpenAI API (optional, for chat answers), TensorFlow.js (optional, for embeddings plugin)
Quick answers
Is orama open source?
Its code is public on GitHub under its own license terms; read them before you use it at work.
Also in RAG and search
See all 17| Rank | Project | Score |
|---|---|---|
| 1 | xerjElasticsearch-compatible search server that auto-indexes folders for coding agents | 86 out of 100 |
| 2 | llm-appYAML-configured RAG server that keeps a vector database synced with a document folder | 82 out of 100 |
| 3 | sonicLightweight schema-less search index that returns object IDs, written in Rust | 82 out of 100 |
| #4 | qmdLocal hybrid search over markdown notes and docs, with CLI and MCP server | 78 out of 100 |
| #5 | paradedbPostgres extension adding BM25 full-text, vector and hybrid search | 76 out of 100 |