# ================================== # Server Configuration # ================================== # Host address for the server to bind to # - Use 0.0.0.0 to accept connections from any network interface (REQUIRED for deployment platforms) # - Use 127.0.0.1 or localhost for local development only HOST=0.0.0.0 # Port number for the application server # - Default: 10000 (configured for deployment platforms like Render, Railway, Fly.io) # - Many platforms override this with their own PORT environment variable PORT=10000 # ================================== # Environment Settings # ================================== # Node environment mode # - production: Optimized for deployment with minification and performance settings # - development: Enhanced debugging and hot-reload capabilities # - test: For running automated tests NODE_ENV=production # ================================== # Optional Configuration # ================================== # Uncomment and configure as needed for your application # Database connection string # DATABASE_URL=postgresql://user:password@localhost:5432/dbname # API Keys and Secrets # API_KEY=your_api_key_here # SESSION_SECRET=your_session_secret_here # ================================== # Contact Form & Email (SMTP) # ================================== # Used by /api/contact for sending contact form submissions # If not set, submissions are logged to console (dev/staging mode) # SMTP_HOST=smtp.gmail.com # SMTP_PORT=587 # SMTP_USER=your_email@example.com # SMTP_PASS=your_app_password_here # CONTACT_EMAIL=hello@workroot.in # ================================== # Newsletter Integration # ================================== # Choose ONE provider. Leave others blank. # Option A: Mailchimp # MAILCHIMP_API_KEY=your_mailchimp_api_key # MAILCHIMP_LIST_ID=your_audience_list_id # MAILCHIMP_DC=us1 # Option B: ConvertKit # CONVERTKIT_API_KEY=your_convertkit_api_key # CONVERTKIT_FORM_ID=your_form_id # If no newsletter provider is configured, new subscribers are logged to console # and optionally emailed to CONTACT_EMAIL via SMTP (if SMTP is configured) # ================================== # Analytics and Monitoring # ================================== # Option A: Google Analytics 4 (GA4) # Format: G-XXXXXXXXXX (NOT the old UA-XXXXXXXXX-X format) # Get your Measurement ID at: Google Analytics → Admin → Data Streams → Web Stream # GOOGLE_ANALYTICS_ID=G-XXXXXXXXXX # Option B: Plausible Analytics (privacy-focused, GDPR compliant) # Set to your site's domain (no https://) # PLAUSIBLE_DOMAIN=workroot.in # Both can be enabled simultaneously if desired. # If neither is set, no analytics scripts are injected. # Sentry error tracking (optional) # Get your DSN at https://sentry.io → Project → Settings → Client Keys (DSN) # SENTRY_DSN=https://xxx@oXXXXXX.ingest.sentry.io/XXXXXXX # Structured logging level: debug | info | warn | error (default: info in prod, debug in dev) # LOG_LEVEL=info # Application release version — used for Sentry release tracking # RELEASE_VERSION=1.0.0