finds.dev← search

// the find

bvaughn/redux-search

★ 1,394 · JavaScript · MIT · updated Dec 2020

Redux bindings for client-side search

Redux middleware that offloads client-side full-text search to a Web Worker, returning matched document IDs back to Redux state. Solves a real problem: keeping search fast on large in-memory collections without blocking the main thread. Last touched in 2020, predates React-Query and Zustand era.

Worker-based indexing is the right call — substring search on thousands of documents would visibly stutter on the main thread otherwise. Configurable index modes (all-substrings, prefix, exact) give you the tradeoff knob you actually need. The selector/action pattern integrates cleanly with reselect without ceremony. The underlying js-worker-search is split out as a separate package, so the search logic is reusable outside Redux.

Abandoned — no commits since 2020, still depends on babel-polyfill and Regenerator runtime, which haven't been necessary for years and add real bundle weight. Every document must have an `id` field; no escape hatch if your data uses a different key. No TypeScript types, so adopting it in a modern TS project means writing your own declarations or tolerating `any` everywhere. Redux as an architecture choice is itself on the decline, and this library has no path to work with lighter alternatives — it's middleware-bound.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →