pkg-store

Use package.json as a config store.
Please consider following this project's author, Jon Schlinkert, and consider starring the project to show your :heart: and support.
Install
Install with npm:
$ npm install --save pkg-store
Usage
const Pkg = require('pkg-store');
API
Extends cache-base, please see the cache-base
documentation for more details.
Pkg
Initialize a new Pkg
store at the given cwd
with the specified options
.
Params
cwd
{String}: Directory of the package.json to read.options
{Object}
Example
const pkg = require('pkg-store')(process.cwd());
const pkg = new Pkg(cwd, options);
// or
const pkg = new Pkg(options);
console.log(pkg.path);
//=> '~/your-project/package.json'
console.log(pkg.data);
//=> { name: 'your-project', ... }
.save
Write the pkg.data
object to the file system at pkg.path
.
Params
callback
{Function}: (optional)
Example
pkg.save();
.read
Reads pkg.path
from the file system and returns an object.
returns
{undefined}
Example
const data = pkg.read();
.set
pkg.set(key, value);
Set property key
with the given value
.
Example
// given {"name": "my-project"}
pkg.set('bin.foo', 'bar');
console.log(pkg.data);
//=> {"name": "my-project", "bin": {"foo": "bar"}}
.get
pkg.get(key);
Get property key
from package.json.
Example
// given {"name": "my-project"}
pkg.set('bin.foo', 'bar');
console.log(pkg.get('bin'));
//=> {"foo": "bar"}
.has
pkg.has(key);
Returns true
if package.json
has property key
.
Example
// given: {"name": "my-project"}
console.log(pkg.has('name'));
//=> true
console.log(pkg.has('zzzzzzz'));
//=> false
.union
pkg.union(key, val);
Create array key
, or concatenate values to array key
. Also uniquifies the array.
Example
pkg.union('keywords', 'foo');
pkg.union('keywords', ['bar', 'baz']);
console.log(pkg.get('keywords'));
//=> ['foo', 'bar', 'baz']
About
sh
$ npm install && npm test
sh
$ npm install -g verbose/verb#dev verb-generate-readme && verb
Related projects
You might also be interested in these projects:
- data-store: Easily get, set and persist config data. | homepage
- expand-pkg: Parse string values in package.json into objects. | homepage
- find-pkg: Find the first directory with a package.json, recursing up, starting with the given directory. Similar… more | homepage
- normalize-pkg: Normalize values in package.json using the map-schema library. | homepage
Author
Jon Schlinkert
License
Copyright © 2017, Jon Schlinkert. Released under the MIT License.
This file was generated by verb-generate-readme, v0.6.0, on December 21, 2017.