Application web météo dédiée à la Bretagne développée avec FastAPI, Python, Leaflet.js, Ollama, PostgreSQL et Docker.
Le projet permet d’afficher en temps réel :
- les conditions météo des principales villes bretonnes,
- des cartes interactives,
- des prévisions J+1 / J+2 / J+3,
- un radar pluie animé,
- un historique météo,
- ainsi qu’un résumé météo automatique.
https://xn--mto-bretagne-bebb.loto-tracker.fr
https://xn--mto-bretagne-bebb.loto-tracker.fr/api/meteo/bretagne
https://github.com/SDINAHET/meteo-bretagne
- 🌡️ Température en temps réel
- 🌧️ Pluie et rafales
- 🗺️ Carte météo interactive Leaflet
- 📍 Marqueurs dynamiques par ville
- 📅 Prévisions météo J+1 / J+2 / J+3
- 🌧️ Radar pluie RainViewer animé
- 📊 Historique météo PostgreSQL
- 🔄 Actualisation automatique
- 📱 Interface responsive
- 🔒 HTTPS avec Apache + Let's Encrypt
- 🐳 Déploiement Docker
- ⚡ API REST FastAPI
- Python 3
- FastAPI
- Uvicorn
- SQLAlchemy
- PostgreSQL
- Requests
- Pandas
- NumPy
- HTML5
- CSS3
- JavaScript
- Leaflet.js
- FontAwesome
- Docker
- Docker Compose
- Apache2 Reverse Proxy
- Certbot / Let's Encrypt
- Ubuntu Server
meteo-bretagne/
├── api/
├── data/
├── frontend/
├── scripts/
├── docker-compose.yml
├── requirements.txt
└── README.mdgit clone -b serveur2_meteo https://github.com/SDINAHET/meteo-bretagne.git
cd meteo-bretagnepython3 -m venv venv
source venv/bin/activatepip install -r requirements.txtOu manuellement :
pip install fastapi uvicorn requests pandas numpy sqlalchemy psycopg2-binary apscheduleruvicorn api.main:app --reload --port 8001API disponible sur :
http://127.0.0.1:8001
GET /Réponse :
{
"message": "API Météo Bretagne OK"
}GET /meteo/rennesGET /meteo/rennes/resumeGET /api/meteo/bretagneGET /api/meteo/previsions/bretagneGET /api/meteo/historique/24hGET /api/rainviewer/weather-mapsconst API_BASE_URL = "http://127.0.0.1:8001";const API_BASE_URL = "";sudo a2enmod proxy proxy_http ssl headers rewrite<VirtualHost *:443>
ServerName xn--mto-bretagne-bebb.loto-tracker.fr
SSLEngine on
ProxyPreserveHost On
ProxyPass /api/ http://127.0.0.1:8001/api/
ProxyPassReverse /api/ http://127.0.0.1:8001/api/
ProxyPass /meteo/ http://127.0.0.1:8001/meteo/
ProxyPassReverse /meteo/ http://127.0.0.1:8001/meteo/
</VirtualHost>sudo certbot --apache -d xn--mto-bretagne-bebb.loto-tracker.frdocker compose up --build -dLe projet contient des tests automatisés avec pytest et TestClient.
pip install pytest httpx
pytest -v
---
---
# 📊 Fonctionnalités avancées
- Carte météo dynamique Bretagne
- Radar pluie animé
- Historique météo PostgreSQL
- Timeline météo
- Préchargement radar RainViewer
- Actualisation automatique des données
- Interface responsive dark mode
---
# 📸 Aperçu
Le projet propose :
- une carte météo interactive,
- un tableau météo par ville,
- un radar pluie animé,
- un historique météo,
- des prévisions multi-jours,
- une interface responsive moderne.
---
# 👨💻 Auteur
## Stéphane Dinahet
Développeur Web & Backend
- GitHub : https://github.com/SDINAHET
- LinkedIn : https://www.linkedin.com/in/st%C3%A9phane-dinahet-3b363189/
---
# 📜 Licence
Projet personnel de démonstration technique et pédagogique.