Load secrets from Doppler into your Varlock configuration.
- ✅ Fetch secrets from Doppler projects and configs
- ✅ Bulk-load secrets with
dopplerBulk()via@setValuesBulk - ✅ Service token authentication
- ✅ Efficient caching — single API call shared across all secret lookups
- ✅ Multiple plugin instances for different projects/configs
- ✅ Auto-infer secret names from variable names
- ✅ Helpful error messages with resolution tips
npm install @varlock/doppler-pluginOr load it directly from your .env.schema file:
# @plugin(@varlock/doppler-plugin)
Navigate to your project config in the Doppler dashboard → Access → Service Tokens → Generate a token.
# @plugin(@varlock/doppler-plugin)
# @initDoppler(
# project=my-project,
# config=dev,
# serviceToken=$DOPPLER_TOKEN
# )
# ---
# @type=dopplerServiceToken @sensitive
DOPPLER_TOKEN=
# Secret name defaults to the config item key
DATABASE_URL=doppler()
API_KEY=doppler()
# Or explicitly specify the secret name
STRIPE_SECRET=doppler("STRIPE_SECRET_KEY")
# @initDoppler(id=dev, project=my-app, config=dev, serviceToken=$DEV_DOPPLER_TOKEN)
# @initDoppler(id=prod, project=my-app, config=prd, serviceToken=$PROD_DOPPLER_TOKEN)
# ---
DEV_DATABASE=doppler(dev, "DATABASE_URL")
PROD_DATABASE=doppler(prod, "DATABASE_URL")
# @plugin(@varlock/doppler-plugin)
# @initDoppler(project=my-project, config=dev, serviceToken=$DOPPLER_TOKEN)
# @setValuesBulk(dopplerBulk())
# ---
# @type=dopplerServiceToken @sensitive
DOPPLER_TOKEN=
DATABASE_URL=
API_KEY=
REDIS_URL=