No description
- HTML 59.6%
- Python 40.4%
| .forgejo/workflows | ||
| .gitignore | ||
| AGENTS.md | ||
| cruiseports.json | ||
| generate_kreuzfahrt.py | ||
| kreuzfahrt.html | ||
| kreuzfahrt_app.html | ||
| README.md | ||
| reiseplan.txt | ||
Kreuzfahrtplan Generator
Dieses Projekt generiert eine interaktive HTML-Seite mit Kreuzfahrtplan und Wetterdaten.
Resultat: 🌐 web.supportnet.ch/cruiseweather
Dateien
| Datei | Beschreibung |
|---|---|
reiseplan.txt |
Reiseplan mit Hafenstopps und Ankunfts-/Abfahrtszeiten |
generate_kreuzfahrt.py |
Python-Script, das den Reiseplan parst und eine HTML-Seite generiert |
kreuzfahrt.html |
Generierte Output-Seite (automatisch erstellt) |
cruiseports.json |
Geocache für Hafen-Positionen (OpenStreetMap Nominatim) |
AGENTS.md |
Projekt-Kontext für den Pi Coding Agent |
Verwendung
- Reiseplan erfassen in
reiseplan.txt - html Seite erstellen
python3 generate_kreuzfahrt.py
Das Script:
- Liest
reiseplan.txtein - Sucht Hafen-Positionen via OpenStreetMap Nominatim API
- Holt Wetterdaten von Open-Meteo (Forecast + Fallback-Kette)
- Generiert
kreuzfahrt.htmlmit interaktiven Karten
Wetter-APIs
- Open-Meteo: Primäre Quelle (16-Tage Forecast, kostenlos, kein API-Key nötig)
- WeatherAPI.com: Fallback (14-Tage Forecast, API-Key aus 1Password)
- Open-Meteo Archive: 3-Jahres-Klimamittel als letzter Fallback
Reiseplan-Format (reiseplan.txt)
Schiffname
Untertitel (optional)
Wochentag TT.MM.JJJJ
Hafenname (Land)
Zeit
Seetage: Erholung auf See als Hafenzeile.
Projekt-Workflow
reiseplan.txtaktualisieren (Daten/Wochen)python3 generate_kreuzfahrt.pyausführen- Ergebnis in
kreuzfahrt.htmlprüfen - Commit und push
Tech Stack
- Python 3
- Open-Meteo API (Wetter)
- OpenStreetMap Nominatim (Hafen-Koordinaten)
- Leaflet.js + OpenStreetMap (interaktive Karten)
- CI/CD via Forgejo Actions (
.forgejo/workflows/deploy.yml)