Repolode
oramasearch

oramasearch/orama

A JavaScript/TypeScript search engine library that runs in the browser, Node.js, or edge runtimes, supporting full-text, vector, and hybrid search.

Open-source alternative to:Algolia

Stars
10,603
Forks
409
Open issues
35
Last commit
20 days ago

What is it?

Orama is a search library written in TypeScript that you embed directly in your application. It can run in the browser, on a server, or on edge networks, so you can add search without standing up a separate search service.

The library covers full-text search with typo tolerance, BM25 ranking, stemming and tokenization in 30 languages, and field boosting. It also supports vector search and hybrid search that combines both, along with filters, facets, geosearch and pinning rules. Documents are defined against a typed schema that includes string, number, boolean, enum, geopoint and vector fields.

Orama provides plugins for generating embeddings at insert and search time, proxying calls to OpenAI safely from the client, and building chat-style answer sessions over indexed data. The project is distributed on npm and can also be loaded from a CDN or used with Deno.

Key features

  • 01Full-text search with typo tolerance, BM25 ranking, and exact match
  • 02Vector and hybrid search for semantic retrieval
  • 03Filters, facets, geosearch, and field boosting
  • 04Stemming and tokenization across 30 languages
  • 05Plugin system for embeddings, persistence, and analytics

Use cases

  • Adding client-side search to a static website or documentation site
  • Building semantic or hybrid search over product catalogs
  • Creating a RAG-style question answering interface over your own content

Quick start

  1. 1

    Install the package with npm

    npm i @orama/orama
  2. 2

    Create a database, insert documents and search them in your code

Things to know

  • Vector and hybrid search need text embeddings, which you must supply or generate with a plugin.
  • Generating embeddings with OpenAI models requires an API key through the Secure Proxy plugin.

In collections

Topics

FAQ

What is orama?
A JavaScript/TypeScript search engine library that runs in the browser, Node.js, or edge runtimes, supporting full-text, vector, and hybrid search. Orama is a search library written in TypeScript that you embed directly in your application. It can run in the browser, on a server, or on edge networks, so you can add search without standing up a separate search service.
Is orama free to use? What license does it have?
orama is open source under the Other license. Check the license terms before using it in commercial products.
Is orama still maintained?
Actively maintained. The last commit to orama was on Oct 18, 2026.
What can I use orama for?
Adding client-side search to a static website or documentation site Building semantic or hybrid search over product catalogs Creating a RAG-style question answering interface over your own content
How do I install orama?
Install the package with npm: npm i @orama/orama Create a database, insert documents and search them in your code
Where can I get orama?
The source code and installation instructions are on GitHub: https://github.com/oramasearch/orama

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects