jp is a command line tool that reformats JSON to make it easier to read:

$ cat names.json
$ jp names.json
  "names": [

It only adds and removes whitespace, which means that your data won’t get silently altered. For example, "\u2603" won’t get converted to "☃", and 1.1e1 won’t turn into 11. The ordering remains the same, and invalid JSON can be reformatted (within reason). This stuff shouldn’t matter, but people make mistakes even with a well defined format like JSON, and accurate tools are important when you’re trying to work out what’s gone wrong.

It’s also ridiculously fast because it reformats the data without decoding then reencoding it.


Download a zip file, then copy the jp file inside to somewhere in your path:

The source code is available if you’d prefer to compile it yourself.


To prettify a JSON file:

jp data.json

To prettify from stdin, use - as the filename:

curl -sL | jp -

To compact a JSON file:

jp --compact data.json


The source and bug list for jp are on GitHub.