Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/andostronaut/yaml-extra
YAML: extra contains method such read(), write()
https://github.com/andostronaut/yaml-extra
load read write yaml yaml-content yaml-files yaml-parser yaml-processor
Last synced: about 2 months ago
JSON representation
YAML: extra contains method such read(), write()
- Host: GitHub
- URL: https://github.com/andostronaut/yaml-extra
- Owner: andostronaut
- License: mit
- Created: 2022-12-18T06:20:49.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2023-07-07T03:53:21.000Z (over 1 year ago)
- Last Synced: 2024-10-11T22:36:25.810Z (2 months ago)
- Topics: load, read, write, yaml, yaml-content, yaml-files, yaml-parser, yaml-processor
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/yaml-extra
- Size: 567 KB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Yaml: extra
![build](https://github.com/iamando/yaml-extra/workflows/build/badge.svg)
![license](https://img.shields.io/github/license/iamando/yaml-extra?color=success)
![npm](https://img.shields.io/npm/v/yaml-extra)
![release](https://img.shields.io/github/release-date/iamando/yaml-extra)`yaml-extra` contains methods such read(), write() that you can use easily to write or read a yaml file.
## Installation
```bash
npm install yaml-extra
```## Usage
### CommonJS
```js
const ye = require('yaml-extra')
```### ESM
There is also an `yaml-extra/esm` import, that supports both default and named exports.
```js
import { write, writeSync } from 'yaml-extra/esm'
```Default exports are supported:
```js
import ye from 'yaml-extra/esm'
```## Sync vs Async vs Async/Await
Most methods are async by default. All async methods will return a promise if the callback isn't passed.
Sync methods on the other hand will throw if an error occurs.
Also Async/Await will throw an error if one occurs.
Example:
```js
const ye = require('yaml-extra')
const path = require('path')// Use path join for file path
const filePath = path.join(__dirname, 'file.yaml')// Async with promises:
ye.write(filePath, { foo: 'bar' })
.then((doc) => console.log(doc))
.catch((err) => console.error(err))// Async with callbacks:
ye.write(
filePath,
{ foo: 'bar' },
(doc) => {
console.log(doc)
},
(err) => {
console.error(err)
}
)// Sync:
try {
const doc = ye.writeSync(filePath, { foo: 'bar' })
console.log(doc)
} catch (err) {
console.error(err)
}// Async/Await:
async function writeFile() {
try {
const doc = await ye.write(filePath, { foo: 'bar' })
console.log(doc)
} catch (err) {
console.error(err)
}
}writeFile()
```## Methods
Async
- [read](docs/read.md)
- [write](docs/write.md)Sync
- [readSync](docs/read-sync.md)
- [writeSync](docs/write-sync.md)## Support
yaml-extra is an MIT-licensed open source project. It can grow thanks to the sponsors and support.
## License
yaml-extra is [MIT licensed](LICENSE).