1.0.0 • Published 6 years ago
slic v1.0.0
SLIC
Single Line Configuration (SLIC) is a data format that attempts to be as short as possible while remaining readable and easily editable on a single line. It's like JSON with stripped quotes, some optional tokens, and a few enhancements.
The format was designed for usage in HTML attributes where JSON is tougher to both read and write. You could also put the data in a file, spread it on multiple lines as you please, and use it as a configuration file, for example.
Features
It's a lot like JSON:
- Keys are separated from values with
: - Key-value pairs are separated with
, - Objects are delimited with
{and} - Arrays are delimited with
[and]
Except:
- Quotation marks are omitted
- Optional starting and ending bracket
- Optional
:and,before and after arrays/objects - Primitive values (numbers, booleans, and null) are parsed
- String input with no special tokens is returned as is (primitives are still parsed)
- Object keys with no values are set to
true - Object keys with no values that begin with
!are set tofalse - Explicit strings are delimited with
`which is escaped with\
Example
This:
test: Hello, data { type: text, !isActive, numbers [5, 6] }...results in:
{
"test": "Hello",
"data": {
"type": "text",
"isActive": false,
"numbers": [5, 6]
}
}You can easily check more examples in the tests.
Installation
With npm:
npm i slicUsage
var SlicParser = require('slic').Parser
var parser = new SlicParser()
var data = parser.parse('text: Hello!')
console.log(data) // { "text": "Hello!" }