← All @molecule/* packages · App templates
@molecule/api-secrets-envProvider bond · secrets · API (Node) · v1.0.1 · Apache-2.0
Environment variables secrets provider for molecule.dev
npm install @molecule/api-secrets-envnpm · Source on GitHub · Implements @molecule/api-secrets
@molecule/api-secrets-env is a provider bond on the API (Node) side: it implements the secrets core interface (@molecule/api-secrets) with a concrete vendor or library behind it.
Your code calls the core; you wire this provider once at startup. Swapping vendors later is one line in that wiring, not a rewrite.
import { setProvider } from '@molecule/api-secrets'
import { provider } from '@molecule/api-secrets-env'
setProvider(provider)Works with: @molecule/api-secrets
Auto-generated, AI-first package reference for the molecule.dev ecosystem. It is written to be read by coding agents as much as by people, and is generated from this package's source — edit
src/index.tsJSDoc, not this file.
Environment variables secrets provider for molecule.dev.
Reads secrets from .env files and process.env.
import { setProvider } from '@molecule/api-secrets'
import { provider } from '@molecule/api-secrets-env'
setProvider(provider)
provider
npm install @molecule/api-secrets-env @molecule/api-secrets
EnvProviderOptionsOptions for env provider.
interface EnvProviderOptions {
/**
* Path to the .env file. Ignored when `layers` is provided.
* @default '.env'
*/
path?: string
/**
* Whether to load the .env file on initialization.
* @default true
*/
autoLoad?: boolean
/**
* Whether to override existing environment variables.
* @default false
*/
override?: boolean
/**
* Array of `.env` file paths to load in order. Later files override
* earlier ones. When provided, `path` is ignored.
*
* @example
* ```typescript
* createEnvProvider({
* layers: ['.env', '.env.staging', '.env.staging.feat-login'],
* })
* ```
*/
layers?: string[]
}
createEnvProvider(options)Creates an environment variables secrets provider that reads from a .env file and process.env.
Supports get/set/delete with file persistence, and syncToEnv to copy .env values into process.env.
function createEnvProvider(options?: EnvProviderOptions): SecretsProvider
options — Path to .env file (default '.env'), auto-load flag, and override behavior.Returns: A SecretsProvider backed by .env files and process.env.
providerDefault env provider instance, reading from .env in the current working directory.
const provider: SecretsProvider
Implements @molecule/api-secrets interface.
Setup function to register this provider with the core interface:
import { setProvider } from '@molecule/api-secrets'
import { provider } from '@molecule/api-secrets-env'
export function setupSecretsEnv(): void {
setProvider(provider)
}
Peer dependencies:
@molecule/api-secrets ^1.0.1@molecule/api-secrets