# oramasearch/orama

🌌  A complete search engine and RAG pipeline in your browser, server or edge network with support for full-text, vector, and hybrid search in less than 2kb.

Repository: https://github.com/oramasearch/orama
Canonical: https://ross.abutalabs.com/products/orama
Homepage: https://docs.orama.com/docs/orama-js
Language: TypeScript
License: NOASSERTION
License Family: other
Topics: data-structures, full-text, search, typo-tolerance, algiorithm, search-engine, search-algorithm, javascript, typescript, node, vector, vector-database, vector-database-embedding, vector-search, vector-search-engine
Last push: 2026-08-04T00:12:46+00:00

## Health v2 (maintenance only)
Score: 84/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 95, release rhythm 62, longevity 100
- inputs: {"age_days": 1576, "days_push": 30, "days_rel": 257, "gap_med": 8, "n_releases_24m": 34}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 10533, forks 399 (observed 2026-08-28T04:10:42.246725+00:00)

## What it is
Orama is a lightweight (~2kb) search engine and RAG pipeline library written in TypeScript that runs in the browser, server, or edge network. It supports full-text, vector, and hybrid search with features like typo tolerance, BM25 scoring, facets, geosearch, and multilingual stemming.

## Use cases
- add full-text search to a javascript app
- run a vector search database in the browser
- build a hybrid search engine with keyword and semantic matching
- create a RAG answer engine over my documents
- implement typo-tolerant search for a small dataset
- add faceted search and filters to an e-commerce site
- search documents on edge/serverless functions without a database server
- support stemming and tokenization in multiple languages

## When to choose
- you need embedded search with no external service or server dependency
- you want full-text, vector, and hybrid search in one tiny library
- you're building for browser, edge, or serverless environments where footprint matters
- you need a lightweight RAG/answer-engine pipeline in JavaScript or TypeScript

## When to avoid
- you need a large-scale distributed search cluster like Elasticsearch or OpenSearch
- you require heavy-duty persistence, replication, or multi-node indexing
- your dataset is too large to hold in memory
- you need a managed hosted search service with dashboards and analytics

## Facets
- artifact type: library
- maturity: active
- function: search-engine, vector-database, rag, plugin-system, nlp
- domain: databases, web-development
- platform: browser, bun, cross-platform, cli
- tags: full-text-search, hybrid-search, typo-tolerance, bm25, geosearch, embeddings, answer-engine, edge-runtime, facets, stemming, search, retrieval-augmented-generation, natural-language-processing, nodejs, deno, web-server

## Member repositories
- oramasearch/orama (main) score 84

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:42.246725+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:18:34.096354+00:00, confidence not recorded.
  - readme: https://github.com/oramasearch/orama (fetched 2026-08-28T04:10:42.246725+00:00, sha 77bc1a74b318)
  - homepage: https://docs.orama.com/docs/orama-js (fetched 2026-08-29T08:18:12.549431+00:00, sha 1cf2bc3d979a)
  - site_page: https://docs.orama.com/docs/orama-js/results-pinning (fetched 2026-08-29T08:18:12.551744+00:00, sha 54ae545430b2)
  - site_page: https://docs.orama.com/docs/orama-js/answer-engine (fetched 2026-08-29T08:18:12.553382+00:00, sha 87a18cf55892)
  - site_page: https://docs.orama.com/docs/orama-js/supported-languages (fetched 2026-08-29T08:18:12.555508+00:00, sha 418f0bca287d)
  - site_page: https://docs.orama.com/docs/orama-js/supported-languages/using-chinese-with-orama (fetched 2026-08-29T08:18:12.557409+00:00, sha dacd01c321de)
  - site_page: https://docs.orama.com/docs/orama-js/supported-languages/using-japanese-with-orama (fetched 2026-08-29T08:18:12.559158+00:00, sha 4d5899cc1c3f)
- Data as of 2026-08-30T08:39:29.467469+00:00.
