template-repo/.env.example
2025-11-02 01:38:30 -06:00

78 lines
2.2 KiB
Plaintext

# ---------------------------------------------------------------------------
# LOCAL DEVELOPMENT TEMPLATE
# Copy this file to `.env` and fill only the sections that apply to your app.
# Treat blanks as intentional—remove unused sections after bootstrapping.
# ---------------------------------------------------------------------------
# === Core application ===
APP_NAME="my-app"
NODE_ENV="development"
APP_URL="http://localhost:3000"
# === Database (PostgreSQL recommended) ===
# Example: postgres://user:password@host:5432/db?sslmode=require
DATABASE_URL=""
DIRECT_URL="" # Optional: connection string for migration tooling
# === Authentication (Optional) ===
# Generate with `openssl rand -base64 32`
AUTH_SECRET=""
# Provider toggles: set to "true" or leave blank.
AUTH_ENABLE_EMAIL="";
AUTH_ENABLE_GOOGLE="";
AUTH_ENABLE_GITHUB="";
# Email magic links / passwordless
EMAIL_SERVER_HOST=""
EMAIL_SERVER_PORT=""
EMAIL_SERVER_USER=""
EMAIL_SERVER_PASSWORD=""
EMAIL_FROM=""
# Google OAuth
GOOGLE_CLIENT_ID=""
GOOGLE_CLIENT_SECRET=""
# GitHub OAuth
GITHUB_CLIENT_ID=""
GITHUB_CLIENT_SECRET=""
# === Storage (Optional) ===
# Works for AWS S3, Cloudflare R2, or any S3-compatible service.
STORAGE_DRIVER="s3" # s3 | r2 | minio | filesystem
STORAGE_ACCESS_KEY_ID=""
STORAGE_SECRET_ACCESS_KEY=""
STORAGE_REGION="us-east-1"
STORAGE_BUCKET=""
STORAGE_ENDPOINT="" # Required for R2 / MinIO. Leave blank for AWS.
# === Scheduling & Calendars (Optional) ===
CALENDAR_PROVIDER="" # nextcloud | google | none
CALENDAR_BASE_URL=""
CALENDAR_USERNAME=""
CALENDAR_PASSWORD=""
CALENDAR_CLIENT_ID=""
CALENDAR_CLIENT_SECRET=""
CALENDAR_DEFAULT_TIMEZONE="America/Denver"
# === Feature Flags (Optional) ===
FLAGS_PROVIDER="" # launchdarkly | growthbook | configcat | none
FLAGS_CLIENT_KEY=""
FLAGS_SERVER_KEY=""
# === Analytics & Observability (Optional) ===
ANALYTICS_PROVIDER="" # plausible | umami | vercel | none
ANALYTICS_SITE_ID=""
SENTRY_DSN=""
LOG_LEVEL="info"
# === Edge / Worker deploys (Optional) ===
CLOUDFLARE_ACCOUNT_ID=""
CLOUDFLARE_API_TOKEN=""
WRANGLER_PROFILE=""
# === Miscellaneous ===
NEXT_PUBLIC_APP_NAME="${APP_NAME}"
NEXT_PUBLIC_FEATURE_FLAGS=""