Nostalgic Primordial Monster
    Wondering what’s next for npm?Check out our public roadmap! »

    fixjson

    1.1.2 • Public • Published

    JSON fixer for Humans

    npm version ci-badge

    fixjson is a JSON file fixer/formatter for humans using (relaxed) JSON5.

    fixjson provides:

    • Pretty-printing JSON5 input
      • ES5 syntax is available to write up JSON
    • Fixes various failures while humans writing JSON
      • Fixes trailing commas objects or arrays
      • Fixes missing commas for elements of objects or arrays
      • Adds quotes to keys in objects
      • Newlines in strings
      • Hex numbers
      • Fixes single quotes to double quotes

    fixjson reads an input in relaxed JSON5 format and outputs it in JSON format. Indent width is automatically detected.

    This CLI tool aims to be used with editor extensions.

    Screenshots of Fixes

    When moving a line to another line, you no longer need to care about a trailing comma:

    modify keys

    And you also don't need to care about a trailing comma of a previous line when adding a new element to an object or an array:

    add key

    When adding a new key-value to an object, quotes of the key are fixed. And single quotes for strings are also fixed to double quotes:

    key quotes

    JSON string does not allow multi-line string. \n is required to embed multi-line string to JSON. fixjson automatically fixes newlines in strings. This is useful when copy&paste some string to JSON file:

    newlines in string

    JSON only accepts decimal digits for numbers. fixjson automatically converts 0x hex numbers to decimal numbers. You no longer need to convert hex numbers manually:

    hex numbebr

    And of course it pretty-prints the JSON code, with automatic indent detection:

    pretty printing

    Installation

    $ npm install -g fixjson

    It installs fixjson command globally.

    Usage

    fixjson [--write|--indent|--minify|--stdin-filename] [paths...]

    If paths are given, glob such as dir/**/*.json is available. If the path is a directory, it formats all JSON files in the directory. If no path is given, it reads from STDIN.

    If --write (or -w) option is provided, it overwrites files.

    If --indent {num} (or -i {num}) is not provided, it detects indent spaces.

    Please see fixjson --help for more details.

    License

    Distributed under the MIT License. Please see LICENSE.

    Install

    npm i fixjson

    DownloadsWeekly Downloads

    271

    Version

    1.1.2

    License

    MIT

    Unpacked Size

    14.9 kB

    Total Files

    5

    Last publish

    Collaborators

    • avatar