Introduction
Managing environment variables is repetitive and error‑prone.
lazyenv treats .env.example as the source of truth and keeps your store and local .env files in sync.
What lazyenv is
Section titled “What lazyenv is”- A CLI that treats
.env.exampleas the source of truth - A bridge to a pluggable secret store (Infisical, Doppler, Bitwarden, 1Password)
- A way to push/pull secrets across monorepos without hand‑maintained config
What lazyenv is not
Section titled “What lazyenv is not”- A replacement for your secret store
- A production‑grade guarantees story
- A magic config generator that knows your architecture
How it works
Section titled “How it works”# 1) Create/maintain .env.example files in your repo# 2) Initialize a project configlazyenv init --store <infisical|doppler|bitwarden|onepassword>
# 3) Push keys from .env.example into your store (prompted)lazyenv sync
# 4) Pull secrets into local .env files (gitignored)lazyenv pull
# 5) Run commands with secrets injectedlazyenv run npm run devProvisioners (quick intro)
Section titled “Provisioners (quick intro)”Provisioners are how lazyenv can produce secret values (instead of you pasting them in).
Types:
browser: automated browser flows (OAuth setup). Built‑ins:github-oauth,google-oauth. Custom provisioners live in.lazyenv/config.json.generator: deterministic/random generators for keys likeJWT_SECRET.program: run a local program/script to produce outputs (declared in.lazyenv/config.json).
Next: Provisioners or lazyenv provisioners.
Next Steps
Section titled “Next Steps”- Install: Installation
- Do it once: Quick Start
- Learn the model: Core Concepts