pkg-config

parse the closest `package.json` and get package specific configurations

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
pkg-config
801.1.18 years ago9 years agoMinified + gzip package size for pkg-config in KB

Readme

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 Statustravis-imagetravis-url !Downloadsnpm-downloadsnpm-url !Code Climatecodeclimate-qualitycodeclimate-url !Coverage Statuscodeclimate-coveragecodeclimate-url !Dependenciesdavid-imagedavid-url

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.
!Gratipaygratipay-imagegratipay-url !PayPalpaypal-imagepaypal-url !Flattrflattr-imageflattr-url !Bitcoinbitcoin-imagebitcoin-url

License

MIT © Ahmad Nassri