Fuse is a JavaScript fuzzy search library and client-side search engine designed to index and query JSON data. It provides utilities for approximate string matching and ranking results by relevance, allowing applications to perform fast filtering and searching of datasets without a dedicated backend.
The library distinguishes itself through a token-based search implementation that supports word-order independence and relevance weighting. It utilizes edit-distance scoring to handle typos and insertions, and employs a system of field weighting to prioritize matches in high-value data keys.
The project covers a broad range of search and indexing capabilities, including boolean-logic query parsing, nested data traversal via path notation, and character-level match indexing for visual highlighting. It also includes performance features such as index caching and worker-thread parallelization to process large datasets without blocking the main thread.