A JavaScript library for filtering objects using a JSON SQL-like query language (jsql).
searchjs is a JavaScript library that implements jsql, a JSON-based SQL-like query language for filtering and searching JavaScript objects. It allows developers to query plain objects and arrays using a declarative syntax, supporting deep nesting, ranges, text searches, and logical operations without external dependencies.
JavaScript developers working with in-memory data structures who need flexible querying capabilities, such as filtering API responses, client-side data sets, or configuration objects.
It offers a lightweight, intuitive alternative to manual filtering or heavy database integrations, with a focus on simplicity, extensibility, and zero external dependencies.
A library for filtering JavaScript objects based on a json SQL-like language, jsql
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses an intuitive SQL-like format expressed as JSON, making queries readable and familiar, as shown in examples like {name: 'John', age: 30}.
Supports traversing complex nested objects and arrays with dot notation and configurable separators, enabling queries like {'city.Montreal': true}.
Offers exact matches, ranges, text searches (substring, word, start/end), and regex support, providing versatile filtering without external dependencies.
Allows global overrides for join types, text matching, separators, and property search depth, simplifying repeated query patterns across a project.
Property search without depth limits can lead to high CPU and memory usage on large datasets, as explicitly warned in the README.
Lacks advanced database features such as joins, aggregations, or indexing, making it unsuitable for relational data or complex analytical queries.
Regular expressions require quoting and a separate _regexp flag, adding syntactic complexity compared to native JavaScript regex usage.