UNPKG

codalware-auth

Version:

Complete authentication system with enterprise security, attack protection, team workspaces, waitlist, billing, UI components, 2FA, and account recovery - production-ready in 5 minutes. Enhanced CLI with verification, rollback, and App Router scaffolding.

40 lines (35 loc) 1.69 kB
// Try to load dotenv if available (do not crash if it's missing) (async () => { try { // Dynamically import dotenv for compatibility with ES modules const dotenv = await import('dotenv'); dotenv.config({ path: `.env.${process.env.NODE_ENV || 'development'}.local` }); } catch { // dotenv not installed or failed to load — proceed using process.env } })(); // Centralized environment exports. Avoid reading process.env at module-eval // time for values that may be mutated or relied upon by hosting platforms // during different lifecycle phases (build vs runtime). Provide lazy getters // so callers get live values when they access them. const env = process.env; function getEnv(key, fallback) { return process.env[key] ?? fallback; } module.exports = { get NODE_ENV() { return getEnv('NODE_ENV', 'development'); }, get DATABASE_URL() { return getEnv('DATABASE_URL', ''); }, get GOOGLE_PASS() { return getEnv('GOOGLE_PASS'); }, get GMAIL_ACCOUNT_EMAIL() { return getEnv('GMAIL_ACCOUNT_EMAIL'); }, get EMAIL_SERVER_HOST() { return getEnv('EMAIL_SERVER_HOST'); }, get EMAIL_SERVER_PORT() { return getEnv('EMAIL_SERVER_PORT'); }, get EMAIL_SERVER_USER() { return getEnv('EMAIL_SERVER_USER'); }, get EMAIL_SERVER_PASSWORD() { return getEnv('EMAIL_SERVER_PASSWORD'); }, get ADMIN_EMAIL() { return getEnv('ADMIN_EMAIL'); }, get ADMIN_PASSWORD() { return getEnv('ADMIN_PASSWORD'); }, get ADMIN_NAME() { return getEnv('ADMIN_NAME'); }, get SKIP_AUTHCORE_WIZARD() { return getEnv('SKIP_AUTHCORE_WIZARD') === 'true' || getEnv('SKIP_AUTHCORE_WIZARD') === '1'; }, env, // Helper to retrieve raw env values on demand getEnv, };