Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/onhernandes/parserblade

The easiest parser for JSON, XML, CSV and YAML. Use it as simple as JSON.stringify() or JSON.parse(). All in one place.
https://github.com/onhernandes/parserblade

csv javascript json parser xml yaml

Last synced: about 1 month ago
JSON representation

The easiest parser for JSON, XML, CSV and YAML. Use it as simple as JSON.stringify() or JSON.parse(). All in one place.

Awesome Lists containing this project

README

        

# parserblade

![CI](https://github.com/onhernandes/parserblade/workflows/CI/badge.svg?branch=main)

A all-in-one parser for Javascript, heavily inspired by: https://github.com/nathanmac/Parser. It allows you to work with JSON, XML, CSV and YAML more without worrying about which module install. It's designed to work just as `JSON.parse` and `JSON.stringify` does, with some improvements.

See [docs](https://onhernandes.github.io/parserblade) for more info and examples.

## Installation

```sh
$ npm install --save parserblade
```

## Usage

Every filetype has two main methods: `stringify()` and `parse()`, both receives two arguments, `data` containing any type of data and an options object.

### CSV

```javascript
const { csv } = require('parserblade')

// Parsing
const input = 'title,platform\nStardew Valley,Steam'
const result = csv.parse(input)
console.log(result) // [ { title: 'Stardew Valley', platform: 'Steam' } ]

// Stringifying
console.log(
csv.stringify(result)
) // 'title,platform\nStardew Valley,Steam'
```

### YAML

```javascript
const { yaml } = require('parserblade')

// Parsing
const input = 'title: Stardew Valley\nplatform: Steam'
const result = yaml.parse(input)
console.log(result) // { title: 'Stardew Valley', platform: 'Steam' }

// Stringifying
console.log(
yaml.stringify(result)
) // 'title: Stardew Valley\nplatform: Steam'
```

### XML

```javascript
const { xml } = require('parserblade')

// Parsing
const input = 'lodash'
const result = xml.parse(input)
console.log(result) // { package: 'lodash' }

// Stringifying
console.log(
xml.stringify(result)
) // 'lodash'
```

## License

MIT ©