Skip to content

parse the closest package.json and get package specific configurations

License

Notifications You must be signed in to change notification settings

ahmadnassri/pkg-config

Folders and files

NameName
Last commit message
Last commit date

Latest commit

61c1a31 · Feb 26, 2019

History

57 Commits
Jul 3, 2015
May 29, 2015
May 29, 2015
Jul 3, 2015
May 29, 2015
Oct 31, 2016
May 29, 2015
Jul 3, 2015
Mar 23, 2016
Feb 19, 2019
Apr 1, 2018

Repository files navigation

pkg-config version License

parse the closest package.json and get package specific configurations

Useful for package developers to store package-related configuration in dependent's package.json.

defaults to config as root, which allows you to still leverage npm's standard config

Build Status Downloads Code Climate Coverage Status Dependencies

Install

npm install --save pkg-config

Usage

sample package.json
{
  ...

  "config": {
    "my-pkg": {
      "foo": "bar"
    }
  },

  "settings": {
    "some-pkg": {
      "foo": "bar"
    }
  }

  ...
}
// defaults to `package.config`
var config = require('pkg-config')()

// returns `package.config[my-pkg]`
var config = require('pkg-config')('my-pkg')

// returns fallback value
var config = require('pkg-config')('another-pkg', false, {
  foo: 'baz'
})

// returns `package.settings[some-pkg]`
var config = require('pkg-config')('some-pkg', {
  root: 'settings'
})

// returns `package.settings`
var config = require('pkg-config')('settings', {
  root: false
})

API

config(namespace[, options, fallback])

Arguments

name description default
namespace property name in package.json, typically this will be your package name undefined
option see options
fallback fallback value undefined

Options

name description default
root package.json object root config
cwd starting directory to look for package.json process.cwd
cache cache package.json's content true

Support

Donations are welcome to help support the continuous development of this project.

Gratipay PayPal Flattr Bitcoin

License

MIT © Ahmad Nassri