AI Construction Site Safety Monitor avec Flask backend.
cd safetymonitor_web
pip install -r requirements.txt
python app.pyOuvrir : http://localhost:5000/login
Compte admin par défaut : admin / admin123
Copier .env.example en .env et remplir les valeurs :
cp .env.example .envInstaller python-dotenv pour charger le .env :
pip install python-dotenv- Aller sur myaccount.google.com
- Sécurité → Validation en deux étapes (activer)
- Mots de passe des applications → Créer un mot de passe pour "SafetyMonitor"
- Utiliser ce mot de passe dans
SMTP_PASSWORD
Mode développement : si
SMTP_USER/SMTP_PASSWORDne sont pas configurés,
le code de vérification s'affiche dans la console du serveur.
| URL | Description |
|---|---|
/login |
Page de connexion |
/register |
Inscription (vérification email en 2 étapes) |
/ |
Dashboard (index) |
/monitor |
Analyse de chantier |
| Méthode | Route | Description |
|---|---|---|
| POST | /api/login |
Connexion (10/min) |
| POST | /api/register |
Étape 1 : envoi code email (5/min) |
| POST | /api/verify-email |
Étape 2 : valider code → créer compte (10/min) |
| POST | /api/logout |
Déconnexion |
| GET | /api/me |
Infos utilisateur courant |
| POST | /api/analyze |
Analyser une image (20/min, auth) |
| GET | /api/status |
Statut serveur |
| GET | /api/admin/users |
Lister les utilisateurs (admin) |
| POST | /api/admin/users |
Créer un utilisateur (admin) |
| DELETE | /api/admin/users/<id> |
Supprimer un utilisateur (admin) |
| GET | /api/admin/logs |
Logs d'audit (admin) |
| GET | /api/admin/analyses |
Historique analyses (admin) |
Tables créées automatiquement au premier lancement :
users— comptes utilisateurs (username, password_hash, role, email)email_verifications— codes de vérification temporaires (15 min)audit_events— journal des actionsanalyses— historique des analyses IA
| Variable | Défaut | Description |
|---|---|---|
SECRET_KEY |
aléatoire | Clé session Flask |
SMTP_HOST |
smtp.gmail.com | Serveur SMTP |
SMTP_PORT |
587 | Port SMTP |
SMTP_USER |
(vide) | Email expéditeur |
SMTP_PASSWORD |
(vide) | Mot de passe app SMTP |
EMAIL_FROM |
= SMTP_USER | Adresse "De :" |
ADMIN_REG_CODE |
SAFETYMONITOR_ADMIN_2024 | Code pour rôle Admin |
FORCE_HTTPS |
0 |
Mettre 1 en production |
vew.pt— détection EPIscafandri.pt— détection échafaudages