Application de collecte terrain antifraude - Madagascar
# 📱 Controle - Application de Collecte Terrain (Antifraude)
Application de collecte de données sur le terrain conçue pour **Madagascar**, avec un contrôle strict et infaillible de l'heure et du lieu (GPS) pour éliminer toute forme de fraude.
## 🎯 Objectif
L'application empêche :
- ❌ Les fausses déclarations de lieu
- ❌ L'antidatage
- ❌ La modification à posteriori des données
- ❌ La fraude de coordonnées GPS
## ✨ Fonctionnalités
### Pour l'Agent
- 📍 **Capture GPS automatique** avec validation par Geofencing
- ⏰ **Contrôle du temps** : collecte autorisée uniquement entre 07h00 et 19h00 (avec pause méridienne 12h00-12h30)
- 🔒 **Verrouillage définitif** des questionnaires après sauvegarde
- 📡 **Mode hors-ligne** avec synchronisation automatique
- 🔤 **Formatage automatique** des noms en "Nom Propre" (avec préservation des acronymes)
- 🚦 **Quota de saisies** défini par le superviseur
### Pour le Superviseur
- 🔐 **Activation manuelle** de chaque appareil (mot de passe maître + quota)
- 📊 **Dashboard web** avec tableau de toutes les soumissions
- 🔍 **Recherche** par agent / matricule / lieu
- 📥 **Export CSV** pour analyse dans Excel
- 🛡️ **Validation symétrique** côté serveur (rejet automatique des données hors zone)
## 🏗️ Architecture
- **Backend** : Node.js / Express
- **Stockage** : JSON File (MVP) — PostgreSQL prévu en production
- **Dashboard** : HTML5/JS statique servi par le backend
- **Mobile** : Logique en JS (simulateur via navigateur)
Voir `ARCHITECTURE.md` pour l'analyse comparative des options techniques.
## 🚀 Démarrage rapide
### Prérequis
- **Node.js** (version 18+ recommandée)
- **npm**
### Lancement (Recommandé)
À la racine du projet, double-cliquez sur **`start.bat`** :
- Il lance le serveur Node.js dans une fenêtre dédiée
- Il ouvre automatiquement votre navigateur sur l'application agent
> Gardez la fenêtre noire ouverte pendant l'utilisation.
### Lancement manuel (avancé)
```bash
# 1. Installer les dépendances
cd backend
npm install
# …