pgschema supports loading configuration from environment variables and dotenv .env files.

Overview

pgschema automatically loads configuration from:
  1. .env file in the current directory (if present)
  2. System environment variables
  3. Command-line flags (highest priority)
The precedence order is: CLI flags > environment variables > defaults

Supported Environment Variables

pgschema supports all standard PostgreSQL environment variables:
PGHOST
string
default:"localhost"
Database server host
PGPORT
integer
default:"5432"
Database server port
PGDATABASE
string
required
Database name (required for all commands)
PGUSER
string
required
Database user name (required for all commands)
PGPASSWORD
string
Database password
PGAPPNAME
string
default:"pgschema"
Application name visible in pg_stat_activity

.env Setup

Create a .env file in your project directory:
# Database connection settings
PGHOST=localhost
PGPORT=5432
PGDATABASE=myapp
PGUSER=postgres
PGPASSWORD=secretpassword

# Optional: Custom application name
PGAPPNAME=pgschema
Security Note: Add .env to your .gitignore file to prevent committing sensitive credentials:
# Environment files
.env
.env.local
.env.*.local