# @restorecommerce/service-config

> An opinionated wrapper of nconf optimized for microservices

Latest version **1.2.3** (published 2026-08-05) · MIT license · 0 weekly downloads

## Install

```sh
npm install @restorecommerce/service-config
pnpm add @restorecommerce/service-config
yarn add @restorecommerce/service-config
bun add @restorecommerce/service-config
```

## Health

**Score 65/100 (B)** — status: active.

Positive: has types; no vulnerabilities; recently updated; high maintenance score; high quality score.

Warnings: low downloads; no esm support.

## Facts

| | |
|---|---|
| Version | 1.2.3 |
| Published | 2026-08-05 |
| First published | 2017-10-17 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Node | >= 12.18.0 |
| Dependencies | 2 |
| Unpacked size | 28.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 7 |
| Author | n-fuse GmbH |
| Maintainers | vanthome, akumarnpm, dani723, vilsol, radu1990 |
| Keywords | restore, commerce, configuration |

## Links

- npm: https://www.npmjs.com/package/@restorecommerce/service-config
- Repository: https://github.com/restorecommerce/libs
- npm.io page: https://npm.io/package/@restorecommerce/service-config

## Dependencies (2)

- [nconf](https://npm.io/package/nconf.md) 0.13.0
- [@restorecommerce/logger](https://npm.io/package/@restorecommerce/logger.md) ^1.4.3

## Alternatives

- [jsforce](https://npm.io/package/jsforce.md) — 851.2K weekly downloads
- [react-native-qrcode-svg](https://npm.io/package/react-native-qrcode-svg.md) — 693.5K weekly downloads
- [@salesforce/plugin-data](https://npm.io/package/@salesforce/plugin-data.md) — 394.9K weekly downloads
- [@backstage/plugin-search-common](https://npm.io/package/@backstage/plugin-search-common.md) — 308.5K weekly downloads
- [@chain-registry/types](https://npm.io/package/@chain-registry/types.md) — 38.4K weekly downloads

## Recent versions

- 1.2.3 (latest) — 2026-08-05
- 1.2.2 — 2026-07-03
- 1.2.1 — 2026-06-16
- 1.2.0 — 2026-06-12
- 1.1.7 — 2025-10-06
- 1.1.6 — 2025-10-02
- 1.1.5 — 2025-09-17
- 1.1.4 — 2025-09-17
- 1.1.3 — 2025-06-12
- 1.1.2 — 2025-05-27
- 1.1.1 — 2025-05-14
- 1.1.0 — 2025-03-28
- 1.0.16 — 2024-11-04
- 1.0.15 — 2024-06-26
- 1.0.14 — 2024-06-26
- … 46 more at https://npm.io/package/@restorecommerce/service-config/versions

## README

# @restorecommerce/service-config

An opinionated wrapper of
[nconf](https://github.com/indexzero/nconf).

Configuration settings are obtain from the following sources in the given order:

1. Command argument
2. Environment variables
3. Configuration files

1.) and 2.) support passing nested object properties with the following pattern:

```json
# Original Configuration JSON file
{
  "someObject": {
    "paramA": "A"
  }
}
```

Can be overridden via env var or command line parameter `someObject__paramA`.
So the nesting is designated by a double underscore.

3.) tries to load the following configuration files from the
`cfg` folder:

- Default configuration file `config.json`
- Additional sub-variants added to the value of the environment variable
`NODE_ENV` for example a value `development:development` would try to load
`config_development.json`

## Usage

```ts
import { createServiceConfig } from '@restorecommerce/service-config';

...

const cfg = createServiceConfig('./test', { stageVar: 'NODE_ENV', logger: logger});
const testSetting = cfg.get('test');
```

---
_Source: https://npm.io/package/@restorecommerce/service-config · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
