Skip to content
Require JSON5 files in node - a better JSON for ES5 era
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

require-json5 Build Status

Require JSON5 files in node - a better JSON for ES5 era

JSON5 is more human friendly, can contain comments, trailing commas, unquoted keys amd more!


npm i require-json5


Include the lib:

var requireJSON5 = require('require-json5');
  1. Require a JSON5 file
var config = require("./config.json5");
  1. Load a .json file in JSON5 format
var config = requireJSON5("./config.json");
  1. Load a .js file as JSON5 format. This is useful if you don't like the .json5 file extension and prefer to keep JSON5 in .js files.
var config = requireJSON5("./config.js");
  1. Parse a JSON5 string
var config = requireJSON5.parse('{ name: /*a very important option*/ "value" }');
  1. Use JSON5 for all require(.json) calls
var config = require("./config"); // can be config.json, config.json5 or config.js

Example of JSON5

The following is a contrived example, but it illustrates most of the features:

    foo: 'bar',
    while: true,
    this: 'is a \
multi-line string',
    // this is an inline comment 
    here: 'is another', // inline comment 
    /* this is a block comment
       that continues on another line */
    hex: 0xDEADbeef,
    half: .5,
    delta: +10,
    to: Infinity,   // and beyond! 
    finally: 'a trailing comma',
    oh: [
        "we shouldn't forget",
        'arrays can have',
        'trailing commas too',
You can’t perform that action at this time.