Skip to content

albertoarena/envaudit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

envaudit

Zero-dependency CLI to audit, compare and sync .env files.

Compares .env against .env.example, detects missing variables, undocumented variables, empty values, and possible secrets leaked into .env.example.

Documentation

Installation

# Install globally
npm install -g @albertoarena/envaudit

# Or run directly with npx
npx @albertoarena/envaudit check

Usage

Check (audit)

# Auto-detects .env and .env.example in current directory
envaudit check

# Custom paths
envaudit check --env .env.local --example .env.example

# CI mode — exits with code 1 if errors found
envaudit check --ci

Output categories:

  • Errors (✗): Missing variables, possible secrets in .env.example
  • Warnings (⚠): Undocumented variables, empty values

Diff

Compare any two env files:

envaudit diff .env.staging .env.production

Shows keys only in each file and keys with different values. Secret-looking values are masked.

Sync

Add missing keys between .env and .env.example:

# Preview changes
envaudit sync --dry-run

# Apply changes
envaudit sync

Doc

Generate markdown documentation of all env variables:

envaudit doc > ENV.md

Outputs a table grouped by prefix (DB_, APP_, AWS_, etc.) with columns: Variable, Required, Default, Group.

CI Integration

Add to your CI pipeline to catch env mismatches early:

# GitHub Actions
- name: Check env files
  run: npx @albertoarena/envaudit check --ci --no-color

# Skip empty value warnings (secrets injected at runtime)
- name: Check env files
  run: npx @albertoarena/envaudit check --ci --no-color --ignore-empty
# GitLab CI
check-env:
  script:
    - npx @albertoarena/envaudit check --ci --no-color

Options

Flag Description
--env <path> Path to .env file (default: .env)
--example <path> Path to .env.example (default: .env.example)
--ci Exit with code 1 if errors found
--ignore-empty Skip empty value warnings (useful in CI)
--dry-run Show sync changes without writing
--no-color Disable colored output
--help, -h Show help
--version, -v Show version

Requirements

  • Node.js >= 18
  • Zero npm dependencies

License

MIT

About

Zero-dependency Node.js CLI tool that audits .env files

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors