A command-line utility to convert a JSON file (.json) to YAML (.yml)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
AJ ONeal be09bf9dd3 v1.2.0 support dates 6 years ago
tests added json2yaml 12 years ago
.gitignore ignore node_modules 11 years ago
LICENSE added LICENSE and other meta stuff 11 years ago
README.md fix #21 note official location 6 years ago
cli.js Multiline 8 years ago
example.json added case of empty object and empty array 11 years ago
example.yml added json2yaml 12 years ago
index.js Multiline 8 years ago
package.json v1.2.0 support dates 6 years ago
test.sh added json2yaml 12 years ago

README.md

Unmaintained Mirror

Please go to the real repo at https://git.coolaj86.com/coolaj86/json2yaml.js

json2yaml

A command-line utility to convert JSON to YAML (meaning a .json file to a .yml file)

The purpose of this utility is to pretty-print JSON in the human-readable YAML object notation (ignore the misnomer, YAML is not a Markup Language at all).

Installation

npm install -g json2yaml

Note: To use npm and json2yaml you must have installed NodeJS.

Usage

Specify a file:

json2yaml ./example.json > ./example.yml

yaml2json ./example.yml | json2yaml > ./example.yml

Or pipe from stdin:

curl -s http://foobar3000.com/echo/echo.json | json2yaml

wget -qO- http://foobar3000.com/echo/echo.json | json2yaml

Or require:

(function () {
  "use strict";

  var YAML = require('json2yaml')
    , ymlText
    ;

    ymlText = YAML.stringify({
      "foo": "bar"
    , "baz": "corge"
    });

    console.log(ymlText);
}());

Example

So, for all the times you want to turn JSON int YAML (YML):

{ "foo": "bar"
, "baz": [
    "qux"
  , "quxx"
  ]
, "corge": null
, "grault": 1
, "garply": true
, "waldo": "false"
, "fred": "undefined"
}

becomes

---
  foo: "bar"
  baz:
    - "qux"
    - "quxx"
  corge: null
  grault: 1
  garply: true
  waldo: "false"
  fred: "undefined"

Note: In fact, both of those Object Notations qualify as YAML because JSON technically is a proper subset of YAML. That is to say that all proper YAML parsers parse proper JSON.

YAML can use either whitespace and dashes or brackets and commas.

For human readability, the whitespace-based YAML is preferrable. For compression and computer readability, the JSON syntax of YAML is preferrable.

Alias

json2yaml has the following aliases:

  • jsontoyaml
  • json2yml
  • jsontoyml