JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 6180
  • Score
    100M100P100Q159664F
  • License MIT

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

Package Exports

  • require-json5

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (require-json5) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

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!

Install

npm i require-json5

Usage

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
require('require-json5').replace();
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',
    ],
}