Variables d’Environnement
Variables Obligatoires
Database
DATABASE_URL="postgresql://user:password@localhost:5432/wagoo_dev"Connexion Ă PostgreSQL. Format: postgresql://user:password@host:port/database
Application
NEXT_PUBLIC_APP_URL="http://localhost:3000"
NODE_ENV="development"NEXT_PUBLIC_APP_URL: URL accessible publiquementNODE_ENV:development|production|test
Variables d’Authentification
better-auth (Sessions & Cookies)
BETTER_AUTH_SECRET="generate-a-random-string"
BETTER_AUTH_TRUST_HOST="true"Générez une clé secrète sécurisée :
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"OAuth Providers
GitHub
GITHUB_CLIENT_ID="your_github_client_id"
GITHUB_CLIENT_SECRET="your_github_client_secret"GOOGLE_CLIENT_ID="your_google_client_id.apps.googleusercontent.com"
GOOGLE_CLIENT_SECRET="your_google_client_secret"Variables Stripe
Développement (Test Mode)
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY="pk_test_..."
STRIPE_SECRET_KEY="sk_test_..."
STRIPE_WEBHOOK_SECRET="whsec_test_..."Production
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY="pk_live_..."
STRIPE_SECRET_KEY="sk_live_..."
STRIPE_WEBHOOK_SECRET="whsec_..."RĂ©cupĂ©rez-les dans Stripe DashboardÂ
Variables Email
EMAIL_FROM="noreply@wagoo.local"
EMAIL_PROVIDER="sendgrid" # ou "resend", "smtp"
# Si SMTP
SMTP_HOST="smtp.gmail.com"
SMTP_PORT="587"
SMTP_USER="your-email@gmail.com"
SMTP_PASS="your-app-password"Variables Optionnelles
Monitoring
SENTRY_DSN="" # Error tracking
NEXT_PUBLIC_GA_ID="" # Google AnalyticsFeature Flags
NEXT_PUBLIC_MAINTENANCE_MODE="false"
NEXT_PUBLIC_FEATURES_ENABLED="blog,reviews,festivals"Logging
LOG_LEVEL="info" # debug | info | warn | error
DEBUG="*" # Pour le debug avancéFichier .env.local Complet
# === Database ===
DATABASE_URL="postgresql://postgres:password@localhost:5432/wagoo_dev"
# === Application ===
NEXT_PUBLIC_APP_URL="http://localhost:3000"
NODE_ENV="development"
# === Authentication ===
BETTER_AUTH_SECRET="your-secret-here"
BETTER_AUTH_TRUST_HOST="true"
# === OAuth ===
GITHUB_CLIENT_ID=""
GITHUB_CLIENT_SECRET=""
GOOGLE_CLIENT_ID=""
GOOGLE_CLIENT_SECRET=""
# === Stripe ===
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY="pk_test_..."
STRIPE_SECRET_KEY="sk_test_..."
STRIPE_WEBHOOK_SECRET="whsec_test_..."
# === Email ===
EMAIL_FROM="noreply@wagoo.local"
EMAIL_PROVIDER="smtp"
SMTP_HOST="smtp.gmail.com"
SMTP_PORT="587"
SMTP_USER=""
SMTP_PASS=""
# === Optionnel ===
SENTRY_DSN=""
NEXT_PUBLIC_GA_ID=""
LOG_LEVEL="info"Sécurité ⚠️
Règles importantes
- JAMAIS commiter
.env.localdans Git - JAMAIS exposer
STRIPE_SECRET_KEY,SMTP_PASS, etc. - Les variables
NEXT_PUBLIC_*sont publiques (visibles dans le navigateur) - Les autres variables restent côté serveur
Vérifier les secrets en production
# Sur Vercel
vercel env list
# Sur une autre plateforme
# Utiliser le dashboard ou les outils de la plateformeVérifier votre configuration
# Afficher les variables disponibles (sans les valeurs sensibles)
env | grep -E "NEXT_PUBLIC|NODE_ENV|DATABASE"
# Vérifier la connexion DB
pnpm prisma db execute --stdin < /dev/null
# Test de connexion Stripe
curl https://api.stripe.com/v1/customers \
-u $STRIPE_SECRET_KEY:Prochaines étapes
→ Premiers pas
Last updated on