JSPM

cson

1.4.3
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 89810
  • Score
    100M100P100Q150891F

CoffeeScript-Object-Notation Parser. Same as JSON but for CoffeeScript objects

Package Exports

  • cson
  • cson/package.json

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 (cson) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

CSON

Check this project's build status on TravisCI View this project's NPM page Donate monthly to this project via Flattr Donate once-off to this project via Paypal

CoffeeScript-Object-Notation Parser. Same as JSON but for CoffeeScript objects.

What is CSON?

Everyone knows JSON, it's the thing that looks like this:

{
    "abc": [
        "a",
        "b",
        "c"
    ],
    "a": {
        "b": "c"
    }
}

But with the invention of CoffeeScript you can also write the same thing in CSON which looks like this:

{
    # an array
    abc: [
        'a'
        'b'
        'c'
    ]

    # an object
    a:
        b: 'c'
}

Which is far more lenient than JSON, nicer to write and read, you don't have to quote everything, you have comments, and won't fail if you forget a comma.

Installing

  1. Install Node.js

  2. Install CSON

    npm install cson

Using CSON

  • With Node.js in JavaScript

    // Include CSON
    CSON = require('cson');
    
    // Parse a file path
    CSON.parseFile('data.cson', function(err,obj){});  // async
    result = CSON.parseFileSync('data.cson');  // sync
    
    // Parse a String
    CSON.parse(src, function(err,obj){});  // async
    result = CSON.parseSync(src);  // sync
    
    // Stringify an object to CSON
    CSON.stringify(obj, function(err,str){});  // async
    result = CSON.stringifySync(obj);  // sync
  • With Node.js in CoffeeScript

    # Include CSON
    CSON = require('cson')
    
    # Parse a file path
    CSON.parseFile 'data.cson', (err,obj) ->  # async
    result = CSON.parseFile('data.cson')  # sync
    
    # Parse a string
    CSON.parse src, (err,obj) ->  # async
    result = CSON.parseSync(src)  # sync
    
    # Stringify an object to CSON
    CSON.stringify data, (err,str) ->  # async
    result = CSON.stringifySync(obj)  # sync
    
  • Via the command line (requires a global installation of CSON via npm install -g cson)

    # JSON file to CSON String
    json2cson filePath > out.cson
    
    # CSON file to JSON String
    cson2json filePath > out.json

History

You can discover the version history inside the History.md file

License

Licensed under the incredibly permissive MIT License
Copyright © 2012+ Bevry Pty Ltd
Copyright © 2011 Benjamin Lupton