2.0.1 • Published 4 months ago

jora-cli v2.0.1

Weekly downloads
4
License
MIT
Repository
github
Last release
4 months ago

jora-cli

NPM version Build Status Coverage Status

Command line interface for Jora (a JSON query language)

jora-cli-demo

Install

npm i -g jora-cli

Usage

> jora -h
Usage:

    jora [query] [options]

Options:

        --no-color               Suppress color output
        --dry-run                Don't output result, only report what it would have done
    -e, --encoding <encoding>    Output encoding: json (default), jsonxl (snapshot9)
    -f, --force                  Force overwriting output file
    -h, --help                   Output usage information
    -i, --input <filename>       Input file
    -o, --output <filename>      Output file (outputs to stdout if not set)
    -p, --pretty [indent]        Pretty print with optionally specified indentation (4 spaces by default)
    -q, --query <query>          Jora query
        --verbose                Output debug info about actions
    -v, --version                Output version

Examples

Then you can do this wonderful requests in terminal

# get a single field, e.g. version
jora version <package.json

# get all top level dependencies count
jora -i package.json -q '(dependencies.keys() + devDependencies.keys()).size()'

# find packages with more than a single version (run query from a file)
npm ls --json | jora find-multi-version-packages.jora

The content of find-multi-version-packages.jora may be as follows:

..(dependencies.entries().({ name: key, ...value }))
    .group(=>name, =>version)
    .({ name: key, versions: value })
    .[versions.size() > 1]

Caveats

jora-cli takes a valid JSON and produce a valid JSON as a result. However, jora language could produce some values that incompatable with JSON, such values are transforming:

  • NaN, Infinity and -Infinity are converting to null, that's a behaviour of JSON.stringify()
  • undefined
    • is convering to null when a result of query (top level) or an element of an array
    • object entries with undefined as a value are eliminating

License

MIT

2.0.1

4 months ago

2.0.0

4 months ago

1.5.1

4 years ago

1.5.0

5 years ago

1.4.0

5 years ago

1.3.0

5 years ago

1.2.0

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago