|
|
5 years ago | |
|---|---|---|
| .. | ||
| node_modules | 5 years ago | |
| LICENSE | 5 years ago | |
| README.md | 5 years ago | |
| index.js | 5 years ago | |
| package.json | 5 years ago | |
| utils.js | 5 years ago | |
README.md
pkg-store

Use package.json as a config store.
Install
Install with npm:
$ npm install pkg-store --save
Inherits cache-base, please see the cache-base documentation for more details.
Usage
Pass the cwd and options to use, or an options object with cwd or path. If nothing is passed, the current working directory will be used.
var pkg = require('pkg-store')(cwd, options);
// or
var pkg = require('pkg-store')(options);
// or
var pkg = require('pkg-store')();
Example
var pkg = require('pkg-store')(process.cwd());
API
Inherits cache-base, please see the cache-base documentation for more details.
.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"}}
.save
Persist package.json to the file system at pkg.path.
pkg.save();
.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']
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
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Building docs
Generate readme and API documentation with verb:
$ npm install verb && npm run docs
Or, if verb is installed globally:
$ verb
Running tests
Install dev dependencies:
$ npm install -d && npm test
Author
Jon Schlinkert
License
Copyright © 2016, Jon Schlinkert. Released under the MIT license.
This file was generated by verb, v, on March 31, 2016.