jennifer registry

@deckyard/jsonpath

Query JSON values with RFC 9535 JSONPath, checked against the official compliance test suite

jsonjsonpathrfc9535queryi-regexp

Depend on it

[decks]
"@deckyard/jsonpath" = "^0.1.0"

Versions

VersionStatusKindPinRequiresEnginesCapabilities
0.1.0livegita323053daeea-jennifer >=0.25.0 jennifer-tiny >=0.25.0-

License

LGPL-3.0-only

Source

Released from
0.1.0
Published under
@deckyard mplx
Repository owner
deckyard

Resolutions

Times a client asked this registry where to find this deck. Not downloads: the registry only stores metadata, and the code is fetched from its repository directly, so we never see an install and cannot count one. Repeated builds inflate these numbers; installs from an existing lockfile do not appear at all. Counted in UTC.

Readme

@deckyard/jsonpath

test Documentation release

RFC 9535 JSONPath queries for Jennifer, over json.Value. The whole RFC: name, wildcard, index, slice and filter selectors, descendant segments, comparisons and logic, and the functions length, count, match, search and value, with I-Regexp patterns. Every case of the official JSONPath Compliance Test Suite passes. Results come as values, as JSON Pointers for the json writers, or as normalized paths.

Documentation

Install

jvc add @deckyard/jsonpath

Or unpack src/ from a release archive (deckyard-jsonpath-<version>.tar.gz) into vendor/deckyard/jsonpath/.

Usage

use io;
import "@deckyard/jsonpath/" as jsonpath;

def doc as json.Value init json.decode(fs.readString("store.json"));

for (def title in jsonpath.query($doc, "$..book[[email protected] < 10].title")) {
    io.printf("%s\n", json.asString($title));
}

def p as jsonpath.Path init jsonpath.compile("$..book[?search(@.author, 'Tolkien')]");
for (def m in jsonpath.find($doc, $p)) {
    io.printf("%s at %s\n", json.encode($m.value), $m.pointer);
}

Requirements

Jennifer 0.25.0 or newer, default or jennifer-tiny binary. No capability.

Development

tools/check-all.sh                   # the full gate, as CI runs it
jennifer test src/jsonpath_test.j    # unit tests and the compliance suite
tools/check-docs.sh                  # docs against the code
tools/pack.sh dist                   # build the release archive

testdata/cts is the vendored compliance suite (BSD-2, see its README).

Licence

LGPL-3.0-only, see LICENSE. Copyright (C) 2026 mplx <[email protected]>.

This deck as JSON