application web interactive conçue pour fournir aux agriculteurs sénégalais des données météorologiques précises, une analyse des risques climatiques et des conseils générés par Intelligence Artificielle pour optimiser leurs récoltes.
# 🌱 Agrimeteo Sénégal
**Agrimeteo Sénégal** est une application web interactive conçue pour fournir aux agriculteurs sénégalais des données météorologiques précises, une analyse des risques climatiques et des conseils générés par Intelligence Artificielle pour optimiser leurs récoltes.
---
## 🛠️ 1. Choix Technologiques & Architecture
Le projet a été développé avec une approche moderne, modulaire et performante, en séparant rigoureusement la logique métier de l'interface utilisateur.
### Stack Technique
* **React (Vite)** : Framework Front-end choisi pour sa rapidité de rendu et sa gestion réactive de l'interface. Vite offre un environnement de développement ultra-rapide.
* **Tailwind CSS** : Utilisé pour le styling. Permet de créer une interface sur-mesure, moderne (effets de "Glassmorphism", dégradés, animations fluides) sans écrire de fichiers CSS lourds.
* **React Context API (`WeatherContext`)** : Utilisé comme gestionnaire d'état global (Global State Management). Il centralise les appels API et évite le *prop-drilling* (le fait de passer des données en cascade entre de nombreux composants).
* **OpenWeatherMap API** : Fournisseur de données météorologiques en temps réel (température, vent, pression, etc.).
* **OpenRouter API (IA)** : Intégration d'un modèle d'Intelligence Artificielle pour générer des conseils agricoles personnalisés basés sur le contexte météo actuel.
### Architecture du Projet
* **`src/context/`** : Contient la logique métier pure (gestion du cache, appels API, mise à jour des états globaux).
* **`src/components/`** : Composants réutilisables, découpés par fonctionnalité.
* **`/map/`** : Gestion complexe de la carte interactive du Sénégal. La carte est un fichier SVG dont le DOM est manipulé dynamiquement pour des raisons de performance.
* **`/weatherAside/`** : Panneau latéral d'affichage des détails et du coach IA.
* **`src/utils/`** : Fonctions utilitaires pures (Calcul de risque, appel IA). Totalement décorrélées …