This package implements the GSJON json document search. The focus lies on the search aspect of GJSON because even though NodeJS comes with a good build-in JSON support. It misses a commong searching syntax.
Please check the source code before using this package
npm install @woifes/gjson
import { get } from "@woifes/gjson";
const exampleJson = {
name: { first: "Tom", last: "Anderson" },
age: 37,
children: ["Sara", "Alex", "Jack"],
"fav.movie": "Deer Hunter",
friends: [
{ first: "Dale", last: "Murphy", age: 44, nets: ["ig", "fb", "tw"] },
{ first: "Roger", last: "Craig", age: 68, nets: ["fb", "tw"] },
{ first: "Jane", last: "Murphy", age: 47, nets: ["ig", "tw"] },
],
};
console.log( get(exampleJson, "name.first") ); //"Tom"
GSJON feature | Supported? | Notes |
---|---|---|
Path Structure | YES | |
Basic | YES | |
Wildcards | YES | |
Escape Character | YES | |
Arrays | YES | |
Queries | YES | |
Dot vs Pipe | YES | |
Modifiers | NO | |
Modifier arguments | NO | |
Custom modifiers | NO | |
Multipaths | NO | |
Literals | NO | |
JSON Lines | NO |
This table is taken from the docs of gjson-py
The project is part of a monorepo. If the project is checked out in this environment use the following scripts:
TypeScript build:
pnpm run compile
Run tests:
pnpm test