Your IP : 3.147.45.11
# libnpmconfig [](https://npm.im/libnpmconfig) [](https://npm.im/libnpmconfig) [](https://travis-ci.org/npm/libnpmconfig) [](https://ci.appveyor.com/project/zkat/libnpmconfig) [](https://coveralls.io/github/npm/libnpmconfig?branch=latest)
[`libnpmconfig`](https://github.com/npm/libnpmconfig) is a Node.js library for
programmatically managing npm's configuration files and data.
## Example
```js
const config = require('libnpmconfig')
console.log('configured registry:', config.read({
registry: 'https://default.registry/'
}))
// => configured registry: https://registry.npmjs.org
```
## Install
`$ npm install libnpmconfig`
## Table of Contents
* [Example](#example)
* [Install](#install)
* [API](#api)
### API
##### <a name="read"></a> `> read(cliOpts, builtinOpts)`
Reads configurations from the filesystem and the env and returns a
[`figgy-pudding`](https://npm.im/figgy-pudding) object with the configuration
values.
If `cliOpts` is provided, it will be merged with the returned config pudding,
shadowing any read values. These are intended as CLI-provided options. Do your
own `process.argv` parsing, though.
If `builtinOpts.cwd` is provided, it will be used instead of `process.cwd()` as
the starting point for config searching.