awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
lucaong avatar

lucaong/minisearch

0
View on GitHub↗
5,804 stars·155 forks·TypeScript·mit·36 viewslucaong.github.io/minisearch↗

Minisearch

Features

  • Trie-Based Inverted Indexes - Stores term-to-document mappings in a compact in-memory trie for fast full-text lookups without external dependencies.
  • Client-Side Search Engines - Adds fast, offline search to web applications by indexing documents in the browser with exact, fuzzy, or prefix matching.
  • Auto-Complete Libraries - Generates ranked query completions from the index as the user types, supporting fuzzy suggestions.
  • Dynamic Document Operations - Inserts or deletes documents from the index at any time without rebuilding the entire index.
  • Full Text Search - Indexes documents in memory and returns ranked results for full-text queries with multiple matching modes.
  • Fuzzy Matching - Finds documents matching a query even when terms are misspelled using configurable edit distance.
  • BM25 Full-Text Indices - An in-memory search library that indexes documents and ranks results using BM25+ relevance scoring with fuzzy and prefix matching.
  • Fuzzy Trie Searches - Performs fuzzy and prefix searches by traversing a trie with Levenshtein-aware branching for configurable edit distance.
  • Fuzzy Search Engines - Tolerates typos and misspellings by allowing configurable edit distance between query terms and indexed terms.
  • In-Memory Indexing - Indexes documents in memory and makes them searchable by textual content.
  • Search Suggestions - Generates ranked query completions from the index as the user types, supporting fuzzy suggestions.
  • Microtask-Based Batch Indexing - Ships microtask-scheduled batch indexing that keeps the UI responsive during bulk document inserts.
  • Relevance Scoring - Scores and sorts search results using the BM25+ algorithm for relevance.
  • BM25+ Scoring - Implements BM25+ relevance scoring with term frequency, inverse document frequency, and field-length normalization.
  • Incremental Updates - Supports incremental document addition, removal, and replacement with automatic cleanup of stale index entries.
  • Customizable Pipelines - Accepts custom tokenizers and term processors for controlling text splitting and normalization during indexing and search.
  • Customizable Tokenizers - Allows replacing the default tokenizer with custom logic for splitting text into tokens during indexing and search.
  • Separate Indexing and Search Pipelines - Controls tokenization and term processing with separate rules for indexing and searching.
  • Search Query Composition - Provides boolean query composition with AND, OR, and AND_NOT operators for building complex search expressions.
  • Document Indexing - Deletes or updates documents in the index so only the current version appears in search results.
  • Document Lifecycle Management - Discards or replaces documents by ID with automatic index cleanup.
  • Field Value Stores - Keeps arbitrary field values alongside indexed terms and retrieves them by document ID without re-indexing.
  • Index Serialization - Exports the full search index to JSON for storage and later restoration without re-indexing.
  • Custom Preprocessing Functions - Accepts user-provided functions for stemming, stop-word removal, or other text preprocessing instead of imposing a built-in locale.
  • Multi-Field Indexing - Stores multiple fields per document in a single compact index using short numeric IDs.
  • Field Value Extraction - Extracts field values from documents using custom functions, supporting nested fields and non-string data.
  • Index Serialization - Exports the full index to a JSON string for storage or transfer and rebuilds it later.
  • JSON Export and Restore - Exports the full index to JSON for persistence and restores it later without re-indexing documents.
  • Prefix Searches - Finds all indexed terms that start with a given prefix for autocomplete and type-ahead.
  • Serializable Indexes - A search index that can be exported to JSON for storage and later restored to resume searching without re-indexing.
  • Logical Search Operators - Joins multiple search terms using AND, OR, and AND_NOT operators to refine result sets.
  • Custom Term Processors - Applies custom normalization, filtering, or stemming to terms during indexing and search via a configurable processor function.
  • Exact Term Matches - Looks up indexed terms that exactly match the search query, returning associated documents.
  • Custom Scoring Multipliers - Applies custom scoring multipliers to specific query terms or documents to influence ranking.
  • Search Result Filtering - Restricts search results to documents satisfying custom predicates like date ranges or categories.
  • Fuzzy Query Suggestions - Suggests complete search queries from partial input using fuzzy matching and relevance ranking.
  • Ranked Query Completions - Generates ranked query completions from partial input to guide users toward valid searches.
  • Asynchronous Indexing - Adds many documents to the index in chunks without blocking the main thread.
  • Combinator Logic - Builds complex search expressions by combining subqueries with AND, OR, and AND_NOT operators.
  • Relevance Score Boosting - Assigns higher weight to matches in specified document fields to influence result ranking.
  • Databases and Search - Tiny full-text search engine for browser and Node.

Star history

Star history chart for lucaong/minisearchStar history chart for lucaong/minisearch

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Minisearch

These projects share indexed features with Minisearch. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • lancedb/lancedblancedb avatar

    lancedb/lancedb

    9,031View on GitHub↗

    LanceDB is a vector database and columnar data store designed to function as a versioned dataset manager and vector search engine. It serves as a high-performance backend for indexing and retrieving high-dimensional embeddings, providing the foundation for machine learning data pipelines. The system distinguishes itself through a combination of cloud-native object storage and immutable version tracking, allowing for data time-travel and reproducible AI experiments. It integrates hybrid search capabilities, merging dense vector similarity with BM25 full-text search and SQL-like scalar filters

    HTMLapproximate-nearest-neighbor-searchimage-searchnearest-neighbor-search
    View on GitHub↗9,031
  • olivernn/lunr.jsolivernn avatar

    olivernn/lunr.js

    9,203View on GitHub↗

    lunr.js is a JavaScript full-text search library and client-side search engine. It creates in-memory search indexes for fast keyword retrieval and ranked document matching within browser or Node.js environments. The library utilizes a JSON serializable search index, allowing the search structure to be converted to and from JSON for storage and distribution of pre-built search data. This enables search functionality for static websites by indexing content into portable files. The system supports advanced querying capabilities, including fuzzy text matching to account for typos, field-scoped i

    JavaScript
    View on GitHub↗9,203
  • redisearch/redisearchRediSearch avatar

    RediSearch/RediSearch

    6,161View on GitHub↗

    RediSearch is a Redis module that adds secondary indexing, full-text search, aggregation, and vector similarity search directly into the in-memory data store. It operates as an in-process search engine, extending the core key-value store with capabilities for indexing hash and JSON documents, enabling fast field-level lookups beyond primary key access. The module provides a full-text search engine built on inverted indexes, supporting stemming, fuzzy matching, and relevance scoring via tf-idf. It also includes a vector similarity search engine using a Hierarchical Navigable Small World graph

    Cfulltextgeospatialgis
    View on GitHub↗6,161
  • apache/lucene-solrapache avatar

    apache/lucene-solr

    4,357View on GitHub↗

    This project is a full text search engine and enterprise search infrastructure designed for indexing and retrieving large sets of documents. It provides a comprehensive framework for information discovery using ranked results and linguistic analysis. The system integrates high-dimensional vector similarity search for semantic retrieval alongside traditional full-text capabilities. It distinguishes itself through support for geospatial data retrieval, multilingual text processing, and a search suggestion workflow that includes typo-tolerant query completion and spellchecking. The platform cov

    backendinformation-retrievaljava
    View on GitHub↗4,357
Compare all 30 related projects→

Frequently asked questions

What are the main features of lucaong/minisearch?

The main features of lucaong/minisearch are: Trie-Based Inverted Indexes, Client-Side Search Engines, Auto-Complete Libraries, Dynamic Document Operations, Full Text Search, Fuzzy Matching, BM25 Full-Text Indices, Fuzzy Trie Searches.

Which projects share features with lucaong/minisearch?

Projects with overlapping indexed features include: lancedb/lancedb — LanceDB is a vector database and columnar data store designed to function as a versioned dataset manager and vector… olivernn/lunr.js — lunr.js is a JavaScript full-text search library and client-side search engine. It creates in-memory search indexes… redisearch/redisearch — RediSearch is a Redis module that adds secondary indexing, full-text search, aggregation, and vector similarity search… apache/lucene-solr — This project is a full text search engine and enterprise search infrastructure designed for indexing and retrieving… ankane/searchkick — Searchkick is an integration library and wrapper that connects application models to search engines such as… krisk/fuse — Fuse is a JavaScript fuzzy search library and client-side search engine designed to index and query JSON data. It…