@nestjs/config is a configuration module for the Nest.js framework that uses dotenv to load process environment variables. It’s useful for managing app configuration in Node.js and TypeScript Nest server-side applications.
Project status
- Actively maintained: The repo has an upstream push dated 2026-09-24, and there have been recent
@nestjs/configupdates in Aug to Sep 2026 (including12.0.1on 2026-09-22). - Update cadence: Evidence shows fairly steady activity in 2026, with updates on 2026-09-22 (12.0.1) and 2026-08-27 (12.0.0), plus earlier in the year at 2026-04-09 (4.0.4) and 2026-02-04 (4.0.3) (so, not dormant, and not a long gap).
AI summary generated
Recent updates
12.0.1
Release 12.0.1 primarily fixes environment interpolation updates to prevent corruption of other variables when property names share prefixes. It also updates runtime dependencies, including dotenv, and expands tests to cover nested and fallback interpolation cases.
12.0.0
Version 12.0.0 of @nestjs/config makes the package pure ESM, switches validation to the Standard Schema spec (with Joi kept only for compatibility), and introduces new configuration capabilities like override and a pluggable env parser. It also updates type inference around ConfigService.get/getOrThrow and replaces lodash with es-toolkit for internal object path operations.
BreakingFeatures4.0.4
Release 4.0.4 primarily updates runtime dependencies dotenv and lodash, with lodash marked as a security-related bump. The code diff also shows additional non-runtime changes, including CI Node version updates and multiple development toolchain dependency upgrades not mentioned in the release notes.
Security4.0.3
Release 4.0.3 primarily updates runtime dependencies used by @nestjs/config, including lodash, dotenv, and dotenv-expand. The code diff shows no application logic changes, but it does include CI Node version and a large set of development/tooling dependency updates that are not mentioned in the release notes.
Security4.0.2
Release 4.0.2 primarily updates the shared KeyOf<T> type in lib/config.service.ts so it can include symbol keys. The code diff also shows non-functional repo and tooling changes, including removal of a README coverage badge and multiple devDependency updates in package.json and package-lock.json.
4.0.1
Release 4.0.1 primarily adds support for using JavaScript Symbols as config tokens. It also adjusts how predefined condition validation is triggered (fixing the logic for validatePredefined with ignoreEnvVars).
Features4.0.0
Release 4.0.0 changes how ConfigService#get resolves values, with internal configuration taking precedence over validated environment variables, and process.env being consulted last. It also introduces new configuration options to control validation of predefined env vars (validatePredefined) and to optionally disable reading process.env entirely (skipProcessEnv).
BreakingFeatures3.3.0
Release 3.3.0 introduces support for loading configuration asynchronously via the ConfigModule load option. The implementation changes both typing and runtime behavior, and adds an e2e test that validates async-loaded config factories.
BreakingFeatures3.2.3
Release 3.2.3 primarily consists of dependency bumps (Nest monorepo, TypeScript, linting tooling, and various @types packages). It also includes a code change to make ConditionalModule error and debug messages reference a cleaner module name, and it replaces the external uuid dependency with Node's crypto.randomUUID.
Features3.2.2
Release 3.2.2 primarily updates the development toolchain (TypeScript, Nest monorepo packages, Node-related types, linting tooling) and bumps CI to Node 21.7. The only functional change in the library code is in ConditionalModule, adding the ability to disable debug logging when a conditional module registration is skipped.
Features3.2.1
Release 3.2.1 is primarily a maintenance update with dependency bumps and test improvements for environment variable loading behavior. The only production code change in the diff is in ConditionalModule timeout handling, specifically adding timer.unref() and clearing the timeout after configuration variables finish loading.
3.2.0
Release 3.2.0 adds a new configuration change stream and introduces dynamic environment updates via ConfigService#set, including interpolation updates for dependent env variables. The code also wires env file paths into ConfigService so it can re-parse .env files when updating values.
Features