WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Conception et développement d'une application web pour la gestion des urgences: cas de l'application SOS communautaire


par Mackly Loick Tchicaya
ESCIC - Bachelor en full stack and data  2025
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Chapitre 5 : Implémentation

6.1. Développement frontend (mobile et web)

6.1.1. Implémentation des écrans clés (Flutter/ReactJS)

Le développement frontend de SOS Communautaire repose sur une approche modulaire, avec des composants réutilisables et une architecture orientée utilisateur. Voici les détails techniques des écrans principaux :

Écran d'accueil (Mobile - Flutter)

· Objectif : Afficher une carte interactive avec les incidents récents et un bouton centralisé pour le signalement.

· Technologies :

· google_maps_flutter pour l'intégration de Google Maps.

· provider pour la gestion d'état (ex. liste des incidents).

· Code exemple :

Formulaire de signalement (Mobile - Flutter)

· Fonctionnalités :

· Sélection de la catégorie (accident, vol, incendie).

· Ajout de médias via image_picker.

· Géolocalisation automatique via geolocator.

· Validation :

· Contrôle du format de la photo (WebP, taille = 2 Mo).

· Vérification de la description (= 10 caractères). Tableau de bord autorité (Web - ReactJS)

· Objectif : Interface de gestion des incidents avec filtres, cartographie et actions prioritaires.

· Technologies :

· React Table pour les listes dynamiques.

· Chart.js pour les statistiques (zones à risques).

· Code exemple :

6.1.2. Intégration des APIs

Les appels API suivent une architecture RESTful, avec des requêtes sécurisées via JWT :

· Authentification :

Signalement d'un incident :

6.2. Développement backend

6.2.1. Logique métier (gestion des incidents, priorisation)

Le backend, développé en Node.js + Express , orchestre les flux de données entre la base de données et les interfaces :

Gestion des incidents Création :

Priorisation via confirmations communautaires

· Mécanisme :

· Chaque confirmation incrémente un compteur dans la table Confirmation.

· Si le compteur dépasse un seuil (ex. 5), l'incident est marqué comme "Confirmé".

Code exemple :

6.2.2. Sécurité (JWT, OTP, cryptage) Authentification sécurisée :

· JWT : Tokens expirant toutes les 15 minutes, avec rafraîchissement via un refresh_token stocké en base

OTP (One-Time Password) :

· Envoi par SMS via Twilio ou Nexmo.

· Validation :

Cryptage des données :

· Chiffrement AES-256 pour les mots de passe et les données sensibles :

6.3. Intégration des services externes

6.3.1. Géolocalisation (Google Maps/Mapbox) Implémentation :

· Frontend mobile :

· Utilisation de geolocator pour obtenir les coordonnées GPS.

· Envoi des coordonnées au backend lors du signalement.

· Frontend web :

· Affichage des incidents sur une carte via @react-google-maps/api.

· Backend :

· Stockage des coordonnées en type GEOGRAPHY dans PostgreSQL.

Exemple de requête SQL pour les incidents proches :

précédent sommaire suivant






La Quadrature du Net

Ligue des droits de l'homme