The Wayback Machine - https://web.archive.org/web/20190504140129/https://github.com/simeji/jid
Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

json incremental digger
Branch: master
Clone or download
Latest commit be32ff3 Mar 31, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Add CircleCI filter: run test when push version tags Jan 4, 2019
cmd/jid fix version Mar 31, 2019
.gitignore modify goreleaser config Jan 4, 2019
.goreleaser.yml modify goreleaser config Jan 4, 2019
ChangeLog correct spelling mistake Sep 1, 2017
LICENSE Initial commit Jun 6, 2016
README.md Update README.md Mar 31, 2019
engine.go Add features : PageUp/Down Mar 16, 2019
engine_test.go Add features : PageUp/Down Mar 16, 2019
go.mod Using go mod Jan 4, 2019
go.sum Using go mod Jan 4, 2019
json_manager.go Rename project name Nov 13, 2016
json_manager_test.go
query.go Fix Query with Json has contain period keys Mar 31, 2019
query_test.go Fix Query with Json has contain period keys Mar 31, 2019
suggestion.go Fix Query with Json has contain period keys Mar 31, 2019
suggestion_test.go Fix Query with Json has contain period keys Mar 31, 2019
terminal.go Fix Query with Json has contain period keys Mar 31, 2019

README.md

jid

Circle CI

Json Incremental Digger

It's a very simple tool.
You can drill down JSON interactively by using filtering queries like jq.

Suggestion and Auto completion of this tool will provide you a very comfortable JSON drill down.

Demo

demo-jid-main

Installation

With homebrew (for Mac)

brew install jid

With pkg (for FreeBSD)

pkg install jid

Other package management systems

Jid can install by package management systems of below OS.

Packaging status

Simply use "jid" command

If you simply want to use jid command, please download binary from below.

https://github.com/simeji/jid/releases

Build

go get -u github.com/simeji/jid/cmd/jid

Usage

Quick start

simple json example

Please execute the below command.

echo '{"aa":"2AA2","bb":{"aaa":[123,"cccc",[1,2]],"c":321}}'| jid

then, jid will be running.

You can dig JSON data incrementally.

When you enter .bb.aaa[2], you will see the following.

[Filter]> .bb.aaa[2]
[
  1,
  2
]

Then, you press Enter key and output [1,2] and exit.

simple json example2

This json is used by demo section.

echo '{"info":{"date":"2016-10-23","version":1.0},"users":[{"name":"simeji","uri":"https://github.com/simeji","id":1},{"name":"simeji2","uri":"https://example.com/simeji","id":2},{"name":"simeji3","uri":"https://example.com/simeji3","id":3}],"userCount":3}}'|jid

With a initial query

First argument of jid is initial query. (Use JSON same as Demo)

demo-jid-with-query

with curl

Sample for using RDAP data.

curl -s http://rdg.afilias.info/rdap/domain/example.info | jid

Load JSON from a file

jid < file.json

Keymaps

key description
TAB / CTRL + I Show available items and choice them
CTRL + W Delete from the cursor to the start of the word
CTRL + U Delete whole query
CTRL + F / Right Arrow (➡️) Move cursor a character to the right
CTRL + B / Left Arrow (⬅️) Move cursor a character to the left
CTRL + A To the first character of the 'Filter'
CTRL + E To the end of the 'Filter'
CTRL + J Scroll json buffer 1 line downwards
CTRL + K Scroll json buffer 1 line upwards
CTRL + G Scroll json buffer to bottom
CTRL + T Scroll json buffer to top
CTRL + N Scroll json buffer 'Page Down'
CTRL + P Scroll json buffer 'Page Up'
CTRL + L Change view mode whole json or keys (only object)
ESC Hide a candidate box

Option

option description
First argument ($1) Initial query
-h print a help
-help print a help
-version print the version and exit
-q Output query mode (for jq)
-M monochrome output mode
You can’t perform that action at this time.