Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sindresorhus/write-json-file
Stringify and write JSON to a file atomically
https://github.com/sindresorhus/write-json-file
Last synced: about 1 month ago
JSON representation
Stringify and write JSON to a file atomically
- Host: GitHub
- URL: https://github.com/sindresorhus/write-json-file
- Owner: sindresorhus
- License: mit
- Created: 2015-09-02T06:26:04.000Z (almost 9 years ago)
- Default Branch: main
- Last Pushed: 2022-10-16T07:53:03.000Z (over 1 year ago)
- Last Synced: 2024-02-07T02:11:31.107Z (5 months ago)
- Language: JavaScript
- Size: 42 KB
- Stars: 210
- Watchers: 7
- Forks: 43
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- Funding: .github/funding.yml
- License: license
- Security: .github/security.md
Lists
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-nodejs-cn - write-json-file - 自动序列化写入JSON到文件. (目录 / 文件系统)
- awesome-nodejs-cn - write-json-file - 自动将 JSON 序列化写入到文件 (包 / 文件系统)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically. ![](https://img.shields.io/github/stars/sindresorhus/write-json-file.svg?style=social&label=Star) (Repository / Object / JSON / JSON Schema)
- awesome-nodejs-cn - write-json-file - **star:211** 将JSON原子化并写入文件 (包 / 文件系统)
- awesome-nodejs-cn - write-json-file - 自动将 JSON 序列化写入到文件 (包 / 文件系统)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-node - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-node.js - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically (Uncategorized / Uncategorized)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-nodejs-precise - write-json-file - json-file .svg?style=social&label=Star&maxAge=2592000?style=flat-square)]() | Stringify and write JSON to a file atomically. | (Packages / Filesystem)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically - ★ 109 (Filesystem)
- awesome-nodejs-new - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-nodejs - write-json-file - Stringify and write JSON to a file atomically. (Packages / Filesystem)
- awesome-nodejs-cn - write-json-file - Stringify and write JSON to a file atomically. (包 / Filesystem)
README
# write-json-file
> Stringify and write JSON to a file [atomically](https://github.com/npm/write-file-atomic)
Creates directories for you as needed.
## Install
```
$ npm install write-json-file
```## Usage
```js
import {writeJsonFile} from 'write-json-file';await writeJsonFile('foo.json', {foo: true});
```## API
### writeJsonFile(filePath, data, options?)
Returns a `Promise`.
### writeJsonFileSync(filePath, data, options?)
#### options
Type: `object`
##### indent
Type: `string | number | undefined`\
Default: `'\t'`Indentation as a string or number of spaces.
Pass in `undefined` for no formatting.
If you set both this and `detectIndent`, this value will be used when the indentation cannot be detected.
##### detectIndent
Type: `boolean`\
Default: `false`Detect indentation automatically if the file exists.
##### sortKeys
Type: `boolean | Function`\
Default: `false`Sort the keys recursively.
Optionally pass in a [`compare`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort) function.
##### replacer
Type: `Function`
Passed into [`JSON.stringify`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify#The_replacer_parameter).
##### mode
Type: `number`\
Default: `0o666`The [mode](https://en.wikipedia.org/wiki/File_system_permissions#Numeric_notation) used when writing the file.
## write-json-file for enterprise
Available as part of the Tidelift Subscription.
The maintainers of write-json-file and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-write-json-file?utm_source=npm-write-json-file&utm_medium=referral&utm_campaign=enterprise&utm_term=repo)
## Related
- [load-json-file](https://github.com/sindresorhus/load-json-file) - Read and parse a JSON file
- [make-dir](https://github.com/sindresorhus/make-dir) - Make a directory and its parents if needed