NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #4200 most downloaded on npm
Simple config handling for your app or module
Last release 8 months ago
04 Feb 2026
Ships on a steady schedule
a new release about every 4 months
Most releases are documented
notes for 43 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
16 years old
64 releases · first in 2011
Add encryptionAlgorithm option ee03ae8
encryptionAlgorithm option ee03ae8https://github.com/sindresorhus/conf/compare/v15.0.2...v15.1.0
https://github.com/sindresorhus/conf/compare/v15.0.1...v15.0.2
https://github.com/sindresorhus/conf/compare/v15.0.1...v15.0.2
Fix handling of legacy decryption (#204) ce28bd6
One column per quarter.
https://github.com/sindresorhus/conf/compare/v15.0.0...v15.0.1
There are no known breaking changes, but it's a major release since it contains a large refactor, and that introduces risk.
There are no known breaking changes, but it's a major release since it contains a large refactor, and that introduces risk.
.appendToArray() method a1dbf86clear() method to emit single change event 9b83a9dhttps://github.com/sindresorhus/conf/compare/v14.0.0...v15.0.0
Add TypeScript type definitions for dot notation property access (#200) 83cb242
https://github.com/sindresorhus/conf/compare/v13.1.0...v14.0.0
Add `rootSchema` and `ajvOptions` options (#196) 2819caa
rootSchema and ajvOptions options (#196) 2819caa.delete() to fix dot-notation typing (#197) 8fdcdd7https://github.com/sindresorhus/conf/compare/v13.0.1...v13.1.0
Fix validation being incorrectly run before schema change (#194) 529e762
https://github.com/sindresorhus/conf/compare/v13.0.0...v13.0.1
Please read about the breaking changes.
This is only a breaking change if you use the schema option.
https://github.com/sindresorhus/conf/compare/v12.0.0...v13.0.0
https://github.com/sindresorhus/conf/compare/v11.0.2...v12.0.0
https://github.com/sindresorhus/conf/compare/v11.0.2...v12.0.0
Fix types for .delete() to allow access by dot notation (#182) 5b9a6e3
.delete() to allow access by dot notation (#182) 5b9a6e3https://github.com/sindresorhus/conf/compare/v11.0.1...v11.0.2
Fix paths in package.json's exports (#172) 99732a0
package.json's exports (#172) 99732a0https://github.com/sindresorhus/conf/compare/v11.0.0...v11.0.1
This package is now pure ESM. Please [read this](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c).
projectName option is now required unless you use the cwd option.
projectVersion option is now required if you use the migration option.https://github.com/sindresorhus/conf/compare/v10.2.0...v11.0.0
Add `beforeEachMigration` option (#167) 06262ab
beforeEachMigration option (#167) 06262abhttps://github.com/sindresorhus/conf/compare/v10.1.2...v10.2.0
Fix types for the upcoming TS 4.7 (#163) eb1da20
https://github.com/sindresorhus/conf/compare/v10.1.1...v10.1.2
Fix the configFileMode option for TypeScript (#159) 07d275b
configFileMode option for TypeScript (#159) 07d275bhttps://github.com/sindresorhus/conf/compare/v10.1.0...v10.1.1
Add `configFileMode` option (#158) 8345d71
configFileMode option (#158) 8345d71https://github.com/sindresorhus/conf/compare/v10.0.3...v10.1.0
Upgrade some dependencies f19ee6b
https://github.com/sindresorhus/conf/compare/v10.0.2...v10.0.3
Minor performance improvement (#153) 1ea9b28
https://github.com/sindresorhus/conf/compare/v10.0.1...v10.0.2
Fix issue with onDidChange not always being called (#143) 3a53356
onDidChange not always being called (#143) 3a53356https://github.com/sindresorhus/conf/compare/v10.0.0...v10.0.1
https://github.com/sindresorhus/conf/compare/v9.0.2...v10.0.0
https://github.com/sindresorhus/conf/compare/v9.0.2...v10.0.0
Add ajv-formats when a schema is used (#144) 094ac38
ajv-formats when a schema is used (#144) 094ac38https://github.com/sindresorhus/conf/compare/v9.0.1...v9.0.2
Fix .reset() to correctly handle falsy default values (#141) 735225e
.reset() to correctly handle falsy default values (#141) 735225ehttps://github.com/sindresorhus/conf/compare/v9.0.0...v9.0.1
Make the clearInvalidConfig option false by default b291021 A lot of people found the previous default surprising.
clearInvalidConfig option false by default b291021
A lot of people found the previous default surprising.https://github.com/sindresorhus/conf/compare/v8.0.0...v9.0.0
Fix .clear() behavior (#136) 259ba9b Previously, it would not reset the values back to the default ones specified in the defaults or schema option. It
.clear() behavior (#136) 259ba9b
Previously, it would not reset the values back to the default ones specified in the defaults or schema option. It correctly does this now.ajv to version 7. This might affect user using the schema option.https://github.com/sindresorhus/conf/compare/v7.1.2...v8.0.0
d7428be
This document describes changes from v7.2.4 to v8.0.0.
If you are migrating from v6 you can use this document .
Support JSON Schema draft-2020-12: prefixItems keyword and changed semantics of items keyword, dynamic recursive references . OpenAPI discriminator keyword. Improved JSON Type Definition support:
errors consistent with JTD specification.
error objects with additional properties to simplify error handling (see Error objects )
internationalized error messages with ajv-i18n TypeScript: support type unions in JSONSchemaType
Node.js require works without .default property - see examples in Getting started Reduce runtime dependency for standalone validation code Fix resolution of $ref: "#" when $id is present ( #815 )
Option strict controls all strict mode restrictions JSON Schema validation errors changes:
dataPath property replaced with instancePath
"should" replaced with "must" in the messages
property name is removed from "propertyName" keyword error message (it is still available in error.params.propertyName ).
Fix the .get() TypeScript return type (#117) 526002e
.get() TypeScript return type (#117) 526002ehttps://github.com/sindresorhus/conf/compare/v7.1.1...v7.1.2
Export Options TypeScript type 71477a7
Options TypeScript type 71477a7https://github.com/sindresorhus/conf/compare/v7.1.0...v7.1.1
Use atomically package instead of write-file-atomic (#115) 6c624a0
atomically package instead of write-file-atomic (#115) 6c624a0https://github.com/sindresorhus/conf/compare/v7.0.1...v7.1.0
https://github.com/sindresorhus/conf/compare/v7.0.0...v7.0.1
https://github.com/sindresorhus/conf/compare/v7.0.0...v7.0.1
Move to TypeScript (#104) 41b0c10 This hopefully should result in better types.
https://github.com/sindresorhus/conf/compare/v6.2.4...v7.0.0
Fix issue with package.json inference when using the cwd option (#107) 3ef2da0
cwd option (#107) 3ef2da0https://github.com/sindresorhus/conf/compare/v6.2.3...v6.2.4
Work around EXDEV error (#106) 64b386a
https://github.com/sindresorhus/conf/compare/v6.2.1...v6.2.3
Nothing published for this version
Improve docs 3ec30d2 66b1058 7e6fcbe
https://github.com/sindresorhus/conf/compare/v6.2.0...v6.2.1
Warning: The migrations option is buggy. Don't use it at this time.
migrations option is buggy. Don't use it at this time.https://github.com/sindresorhus/conf/compare/v6.1.0...v6.2.0
Add `.reset()` method (#87) 52ca0dd
Fix the TypeScript types (#90) b5a4676 The types were accidentally looser than intended.
https://github.com/sindresorhus/conf/compare/v6.0.0...v6.0.1
Improve TypeScript typings (#73) ef63b11 ff54952 93ace80 The types were made much better, but it will probably break for some users. You can now prope
config.get('foo.bar') with a typed store. We're looking into how to support that: https://github.com/sindresorhus/conf/issues/86https://github.com/sindresorhus/conf/compare/v5.0.0...v6.0.0
This version does not have any breaking changes. It's a major version as it has an automatic migration-step for the encryptionKey option. So if you're…
This version does not have any breaking changes. It's a major version as it has an automatic migration-step for the encryptionKey option. So if you're using that option, please continue reading.
Short story, Node.js deprecated the below APIs and we had to do encryption differently. Conf should be able to read both the new and old encryption format and it will write the new encryption format if you change any config. The migration is fully automatic, but please test your app thoroughly in case there are any issues.
crypto.createDecipher() and crypto.createCipher() Node.js methods (#76) 177fe65https://github.com/sindresorhus/conf/compare/v4.1.0...v5.0.0
Add accessPropertiesByDotNotation option (#67) 94f71c5
accessPropertiesByDotNotation option (#67) 94f71c5.onDidAnyChange method (#66) 0c942e1https://github.com/sindresorhus/conf/compare/v4.0.2...v4.1.0
TypeScript - Fix parameter name order for onDidChange callback (#70) 201c2ff
onDidChange callback (#70) 201c2ffhttps://github.com/sindresorhus/conf/compare/v4.0.1...v4.0.2
TypeScript - Fix return type of onDidChange (#65) 2bda368
onDidChange (#65) 2bda368https://github.com/sindresorhus/conf/compare/v4.0.0...v4.0.1
The config is now stored in %APPDATA% instead of %LOCALAPPDATA% on Windows, which is more correct. There's unfortunately no automatic migration path.
The config is now stored in %APPDATA% instead of %LOCALAPPDATA% on Windows, which is more correct. There's unfortunately no automatic migration path. To continue using the old config location, run npm i 'env-paths@^1.0.0' and set the cwd option:
const Conf = require('conf');
const envPaths = require('env-paths');
const config = new Conf({
cwd: envPaths('<projectName>', {suffix: 'nodejs'}).config
});
For TypeScript users only: Refactor TypeScript definition to CommonJS compatible export (#64) 277d70a
- You need to change import Conf from 'conf'; to import Conf = require('conf');
https://github.com/sindresorhus/conf/compare/v3.0.0...v4.0.0
Prevent unsupported JSON values d162504
Breaking:
Enhancements:
clearInvalidConfig option d725709serialize and deserialize options (#59) e18a4a3https://github.com/sindresorhus/conf/compare/v2.2.0...v3.0.0
Nothing published for this version
Allow extension-less config filename f1f1c59
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →