Variables d'environnement¶
C'est quoi une variable d'environnement ?¶
Explication simple : Les variables d'environnement sont des réglages secrets (mots de passe, URLs de serveurs, clés API) que l'on stocke en dehors du code source. Chaque environnement (développement, staging, production) a ses propres valeurs.
Règle de sécurité absolue
Ne jamais committer un fichier .env sur Git. Ces fichiers contiennent des informations sensibles.
Les fichiers .env sont dans .gitignore — c'est intentionnel.
Vue d'ensemble des environnements¶
graph LR
DEV[".env.development\nDéveloppement local\nMocking activé\nAPI locale"] --> STG[".env.staging\nTests d'intégration\nAPI staging"] --> PROD[".env.production\nProduction live\nAPI officielle"]
style DEV fill:#27ae60,color:#fff
style STG fill:#f39c12,color:#fff
style PROD fill:#e74c3c,color:#fff
| Fichier | Usage | API URL |
|---|---|---|
.env.development |
Développement local | http://localhost:3000/api |
.env.staging |
Tests staging | https://api-staging.darewatch.com/api |
.env.production |
Production | https://api.darewatch.com/api |
Variables pour drwh_tech et drwh_immo (Next.js)¶
Fichier .env.development¶
# URL de l'API backend
NEXT_PUBLIC_API_URL=http://localhost:3000/api
# Activer le mode mock (données de démonstration)
# true = les appels API retournent des données fictives
# false = appels API réels
NEXT_PUBLIC_ENABLE_MOCKING=false
NEXT_PUBLIC_MOCK_DELAY=500
# Environnement
NEXT_PUBLIC_ENVIRONMENT=development
NEXT_PUBLIC_APP_VERSION=1.0.0
Fichier .env.staging¶
NEXT_PUBLIC_API_URL=https://api-staging.darewatch.com/api
NEXT_PUBLIC_ENABLE_MOCKING=false
NEXT_PUBLIC_ENVIRONMENT=staging
NEXT_PUBLIC_APP_VERSION=1.0.0
Fichier .env.production (ne jamais versionner)¶
NEXT_PUBLIC_API_URL=https://api.darewatch.com/api
NEXT_PUBLIC_ENABLE_MOCKING=false
NEXT_PUBLIC_ENVIRONMENT=production
NEXT_PUBLIC_APP_VERSION=1.5.0
Les variables NEXT_PUBLIC_
En Next.js, seules les variables préfixées par NEXT_PUBLIC_ sont accessibles côté navigateur.
Les variables sans ce préfixe sont uniquement accessibles côté serveur.
Variables pour drwh_group (Laravel)¶
Fichier apps/drwh_group/.env¶
APP_NAME=DrwhGroup
APP_ENV=local
APP_KEY= # Généré par: php artisan key:generate
APP_DEBUG=true
APP_URL=http://localhost:8002
APP_PORT=8002
LOG_CHANNEL=stack
LOG_LEVEL=debug
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=drwh_group
DB_USERNAME=root
DB_PASSWORD=
CACHE_DRIVER=file
SESSION_DRIVER=file
SESSION_LIFETIME=120
MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_FROM_ADDRESS="noreply@darewatch.com"
MAIL_FROM_NAME="${APP_NAME}"
Variables importantes de drwh_group¶
| Variable | Usage | Exemple |
|---|---|---|
APP_KEY |
Clé secrète Laravel (chiffrement sessions, cookies) | Générer avec php artisan key:generate |
APP_URL |
URL de l'application | http://localhost:8002 |
DB_* |
Configuration base de données | Selon votre MySQL local |
MAIL_* |
Configuration email | Mailtrap pour tests |
Mode Mock — données de démonstration¶
Le mode mock permet de travailler sans API backend réelle. Les données sont servies localement.
graph LR
APP[Application Next.js] -->|ENABLE_MOCKING=true| MOCK[🎭 Données Mock\nLocales]
APP -->|ENABLE_MOCKING=false| API[🔧 API Backend\nRéelle]
style MOCK fill:#f39c12,color:#fff
style API fill:#0066FF,color:#fff
env
NEXT_PUBLIC_ENABLE_MOCKING=true
NEXT_PUBLIC_MOCK_DELAY=500 # Délai simulé en ms
Usage : quand le backend n'est pas disponible, pour travailler uniquement côté front.
env
NEXT_PUBLIC_ENABLE_MOCKING=false
NEXT_PUBLIC_API_URL=https://api.darewatch.com/api
Usage : quand l'API backend est prête et disponible.
Emplacement des fichiers .env¶
drwh_front/ ← Racine du monorepo
├── .env.development ← Variables Next.js (tech + immo) dev
├── .env.staging ← Variables Next.js staging
├── .env.example ← Exemple à copier (dans Git)
└── apps/
└── drwh_group/
├── .env ← Variables Laravel (PAS dans Git)
└── .env.example ← Exemple Laravel (dans Git)