Add files via upload
This commit is contained in:
1 parent
fbd97dc9d5
commit
3688c5743e
5 files changed
+887
-365
No files matched your search
+104
-363
@@ -1,391 +1,132 @@
|
||||
# Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
Alle wichtigen Änderungen an diesem Projekt werden in dieser Datei dokumentiert.
|
||||
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
Das Format basiert auf [Keep a Changelog](https://keepachangelog.com/de/1.0.0/),
|
||||
und dieses Projekt folgt [Semantic Versioning](https://semver.org/lang/de/).
|
||||
|
||||
## [30.0.0] - 2026-02-10
|
||||
|
||||
### 🎉 Major Release - Code-Trennung & Desktop-Optimierung
|
||||
|
||||
### Added
|
||||
- **Modulare Dateistruktur**: Projekt in separate HTML, CSS und JS Dateien aufgeteilt
|
||||
- **Desktop-Optimierungen**: Responsive Layouts für verschiedene Bildschirmgrößen
|
||||
- Tablet/Desktop (768px+): 900px Container
|
||||
- Large Desktop (1200px+): 1100px Container mit 2-Spalten Layout
|
||||
- Extra Large (1600px+): 1400px Container mit 3-Spalten Layout
|
||||
- **Hover-Effekte**: Desktop-optimierte Interaktionen
|
||||
- Navigation Items
|
||||
- Buttons und Filter
|
||||
- Abfahrts-Items
|
||||
- Journey Results
|
||||
- **Live-Map Desktop-Layout**: Controls links positioniert statt oben
|
||||
- **Home View Desktop**: 3-Spalten Navigation auf großen Bildschirmen
|
||||
- **README.md**: Umfassende Dokumentation der Projektstruktur
|
||||
- **CHANGELOG.md**: Versionsverwaltung und Änderungsprotokoll
|
||||
|
||||
### Changed
|
||||
- **Dateistruktur**:
|
||||
- `index.html`: Von 4.698 auf 390 Zeilen reduziert
|
||||
- `styles.css`: 2.467 Zeilen (vorher inline)
|
||||
- `script.js`: 1.992 Zeilen (vorher inline)
|
||||
- **Container-Breiten**: Desktop-optimierte max-widths
|
||||
- Vorher: 1200px (zu breit)
|
||||
- Jetzt: 900px (Tablet), 1100px (Desktop), 1400px (XL)
|
||||
- **Navigation-Menü**: Von 280px auf 320px verbreitert
|
||||
- **Header-Schrift**: Desktop-Größen erhöht (36px → 38px)
|
||||
- **Detail-Modal**: Responsive Breiten je nach Bildschirmgröße
|
||||
- Tablet: 900px
|
||||
- Desktop: 1100px
|
||||
- Extra Large: 1300px
|
||||
|
||||
### Fixed
|
||||
- **Z-Index Issue**: Popups und Modals werden jetzt korrekt über dem Header angezeigt
|
||||
- Header: z-index 10000
|
||||
- Detail-Modal: z-index 10005
|
||||
- Detail-Header: z-index 10006
|
||||
- Leaflet-Popups: z-index 10010
|
||||
- **Desktop-Layout**: Fehlende Optimierungen für große Bildschirme korrigiert
|
||||
- **Live-Map Controls**: Bessere Positionierung auf Desktop
|
||||
|
||||
### Technical Details
|
||||
- CSS-Dateigröße: 2.467 Zeilen (inkl. Desktop-Optimierungen)
|
||||
- JavaScript unverändert: 1.992 Zeilen
|
||||
- HTML-Struktur: Sauber getrennt, 390 Zeilen
|
||||
- Caching-Vorteile: Browser können CSS/JS separat cachen
|
||||
|
||||
---
|
||||
|
||||
## [29.0] - 2025-12-31
|
||||
## [29.0.0] - 2026-02-09
|
||||
|
||||
### ✨ Added
|
||||
- **GitHub-Integration:** Links zur Repository auf der Home-Page
|
||||
- **Changelog GitHub-Link:** "📖 Alle Updates & Code auf GitHub" Button nach neuesten Updates
|
||||
- **Footer GitHub-Link:** "⭐ Star on GitHub" unter "Made with ❤️"
|
||||
- **Hover-Effekte:** Interaktive Buttons mit Animations
|
||||
### Vorherige Version (Monolithisch)
|
||||
- Alle Code in einer `index.html` Datei
|
||||
- 4.698 Zeilen insgesamt
|
||||
- Funktionale PWA mit allen Features
|
||||
- Optimiert für Mobile
|
||||
|
||||
### 🎨 Changed
|
||||
- GitHub-Links mit BVG-Farbschema (Gelb/Schwarz)
|
||||
- Responsive Buttons für Mobile & Desktop
|
||||
### Features (bereits vorhanden)
|
||||
- ✅ Echtzeit-Abfahrten VBB/BVG
|
||||
- ✅ Routenplanung
|
||||
- ✅ Live-Fahrzeugverfolgung (Radar)
|
||||
- ✅ Service Worker (Offline-Fähigkeit)
|
||||
- ✅ PWA Manifest (Installierbar)
|
||||
- ✅ HTTPS Development Server
|
||||
- ✅ DotMatrix Font Integration
|
||||
- ✅ Dark Mode Design
|
||||
- ✅ Touch-optimiert für Mobile
|
||||
- ✅ Pull-to-Refresh
|
||||
- ✅ Leaflet.js Karten-Integration
|
||||
- ✅ BVG-Linienfarben
|
||||
- ✅ Fahrzeug-Filter (U-Bahn, Bus, Tram, S-Bahn, Regional)
|
||||
|
||||
---
|
||||
|
||||
## [28.0] - 2025-12-31
|
||||
## Projektinformationen
|
||||
|
||||
### 🐛 Fixed
|
||||
- **Bug-Fix:** Abfahrten-View nicht mehr beim ersten Laden sichtbar
|
||||
- Home-View ist jetzt korrekt die einzige aktive View beim Start
|
||||
**Entwickelt von:** Aaron K. & Claude (Anthropic)
|
||||
**Lizenz:** MIT
|
||||
**Repository:** https://github.com/Serverlele30/VBB-Status-Web-App
|
||||
|
||||
### ✨ Changed
|
||||
- **Header-Title:** "Live-Nahverkehr für Berlin & Brandenburg" statt "ECHTZEIT-ABFAHRTSMONITOR"
|
||||
- **Credits:** Aaron K. & Claude (Anthropic) im Header erwähnt
|
||||
- **Navigation-Hinweis:** Pfeil entfernt für klareren Text
|
||||
- **Font-Credit:** Nur @NikBLN gelb und verlinkt (nicht "DotMatrix by")
|
||||
|
||||
### 📝 Added
|
||||
- Vollständige README.md für GitHub
|
||||
- GitHub-formatiertes CHANGELOG.md
|
||||
### Mitwirkende
|
||||
- Aaron K. - Projektleitung, Konzept, Testing
|
||||
- Claude (Anthropic) - Entwicklung, Code-Optimierung
|
||||
|
||||
---
|
||||
|
||||
## [26.0] - 2025-12-31
|
||||
## Geplante Features / Roadmap
|
||||
|
||||
### ✨ Added
|
||||
- **Kombinierte Hero-Box:** Navigation + Hero in einer Box
|
||||
- **Pfeil zeigt nach rechts:** Richtung zum Menü-Button
|
||||
### v31.0.0 (geplant)
|
||||
- [ ] API-Error Handling verbessern
|
||||
- [ ] Favoriten-Stationen speichern
|
||||
- [ ] Benachrichtigungen bei Verspätungen
|
||||
- [ ] Dunkles/Helles Theme umschaltbar
|
||||
- [ ] Historische Daten und Statistiken
|
||||
|
||||
### 🎨 Changed
|
||||
- Kompakteres Design durch kombinierte Box
|
||||
- Text "oben rechts" statt "hier oben"
|
||||
### v32.0.0 (Ideen)
|
||||
- [ ] Barrierefreiheit (A11y) Audit
|
||||
- [ ] Mehrsprachigkeit (Englisch)
|
||||
- [ ] Export von Routen als iCal/PDF
|
||||
- [ ] Teilen-Funktion für Verbindungen
|
||||
- [ ] Integration mit Kalender-Apps
|
||||
|
||||
---
|
||||
|
||||
## [25.0] - 2025-12-31
|
||||
## Versionsschema
|
||||
|
||||
### ✨ Added
|
||||
- **Home/Landing-Page:** Neue Startseite beim App-Load
|
||||
- **Navigation-Hinweis:** Pfeil zeigt zum Menü-Button
|
||||
- **Quick-Info Cards:** 3 Feature-Cards (Desktop nebeneinander, Mobile untereinander)
|
||||
- **Features-Box:** Detaillierte technische Features
|
||||
- **Two-Column Layout:** Updates | Info nebeneinander (Desktop)
|
||||
Dieses Projekt verwendet [Semantic Versioning](https://semver.org/lang/de/):
|
||||
|
||||
### 🎨 Changed
|
||||
- "Info" statt "Credits" als Box-Titel
|
||||
- VBB-Gebiet korrekt: "Berlin & Brandenburg"
|
||||
- Kompaktere Paddings und Fonts (~20% kleiner)
|
||||
- **MAJOR** (X.0.0): Breaking Changes, große Architekturänderungen
|
||||
- **MINOR** (0.X.0): Neue Features, abwärtskompatibel
|
||||
- **PATCH** (0.0.X): Bugfixes, kleine Verbesserungen
|
||||
|
||||
---
|
||||
|
||||
## [24.0] - 2025-12-31
|
||||
## Support & Feedback
|
||||
|
||||
### ✨ Added
|
||||
- **Two-Column Layout:** Changelog und Credits nebeneinander
|
||||
Bei Fragen oder Problemen:
|
||||
1. GitHub Issues: https://github.com/Serverlele30/VBB-Status-Web-App/issues
|
||||
2. README konsultieren
|
||||
3. Code-Kommentare lesen
|
||||
|
||||
### 🎨 Changed
|
||||
- Verbesserte Home-Page mit kompakterem Design
|
||||
- Intro-Text statt Feature-Cards
|
||||
|
||||
---
|
||||
|
||||
## [23.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Home-Screen:** Erste Version der Landing-Page
|
||||
- **Feature-Übersicht:** 4 Feature-Cards mit Icons
|
||||
- **Changelog:** Integriert auf Home-Page
|
||||
- **Credits:** Vollständige Attribution
|
||||
|
||||
---
|
||||
|
||||
## [22.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Dynamischer Page-Title:** Browser-Tab zeigt aktive View
|
||||
- "VBB Netz Status - Abfahrten"
|
||||
- "VBB Netz Status - Route"
|
||||
- "VBB Netz Status - Live-Map"
|
||||
|
||||
---
|
||||
|
||||
## [21.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Dynamische Bounds:** Live-Map lädt nur sichtbare Fahrzeuge
|
||||
- **API-Optimierung:** Bis zu 69% weniger Daten bei Zoom-in
|
||||
- **Auto-Reload beim Map-Bewegen:** Immer aktuelle Fahrzeuge im Sichtbereich
|
||||
|
||||
### 🎯 Changed
|
||||
- 15% Puffer-Zone um Map-Bounds für smooth UX
|
||||
- Effizientere API-Calls
|
||||
|
||||
---
|
||||
|
||||
## [20.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Leaflet Map Integration:** Interaktive Karte statt statischer Einbettung
|
||||
- **Custom Marker:** Fahrzeuge als Custom Icons mit Linienfarben
|
||||
|
||||
### 🎨 Changed
|
||||
- Verbesserte Map-Performance
|
||||
- Bessere Mobile-Unterstützung
|
||||
|
||||
---
|
||||
|
||||
## [19.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Echte BVG-Farben:** Authentische Linienfarben für 40+ Linien
|
||||
- U-Bahn: U1-U9 Original-Farben
|
||||
- S-Bahn: Grün + Ringbahn Orange
|
||||
- Tram: Metro-Tram Rot + Tram Gelb
|
||||
- Bus: Gelb + Metro-Bus Rot
|
||||
- **Linienbezeichnung unter Icon:** Mit echter Farbe
|
||||
- **Touch-optimiert:** Keine Zoom-Buttons auf Mobile
|
||||
|
||||
### 🎨 Changed
|
||||
- Farbschema für alle Verkehrsmittel aktualisiert
|
||||
- Bessere visuelle Unterscheidung
|
||||
|
||||
---
|
||||
|
||||
## [18.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Linien-basierte Filterung:** U-Bahn, S-Bahn, Tram, Bus separat
|
||||
- **Präzise Station-Line Mappings:** Custom extrahierte Daten für 1000+ Stationen
|
||||
|
||||
### 🎨 Changed
|
||||
- Verbesserte Filter-Funktionalität
|
||||
- Genauere Linien-Zuordnungen
|
||||
|
||||
---
|
||||
|
||||
## [17.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Live-Update Intervall:** 30 Sekunden Auto-Refresh
|
||||
- **Manueller Refresh-Button:** In Live-Map View
|
||||
|
||||
### 🎨 Changed
|
||||
- Optimierte Update-Strategie
|
||||
- Bessere Performance bei Live-Updates
|
||||
|
||||
---
|
||||
|
||||
## [16.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Live-Map Feature:** Echtzeit-Fahrzeugverfolgung
|
||||
- Dark-Mode Karte (CartoDB)
|
||||
- Filter nach Fahrzeugtyp
|
||||
- Live-Positions-Updates
|
||||
- **3-Tab Navigation:** Abfahrten | Route | Live-Map
|
||||
|
||||
### 🎨 Changed
|
||||
- Navigation erweitert um Live-Map Tab
|
||||
- UI angepasst für 3 Views
|
||||
|
||||
---
|
||||
|
||||
## [15.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Detaillierte Fußwege:** Distanz + Gehzeit für alle Walking-Legs
|
||||
- **Robuste Stationserkennung:** Funktioniert auch bei unvollständigen Namen
|
||||
|
||||
### 🎨 Changed
|
||||
- Verbesserte Journey-Details
|
||||
- Klarere Fußweg-Darstellung
|
||||
|
||||
---
|
||||
|
||||
## [14.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Garantierte 5 Min Umstiegszeit:** Alle Routen mit mindestens 5 Min Transfer
|
||||
- **Intelligente Route-Berechnung:** API-Parameter optimiert
|
||||
|
||||
### 🎨 Changed
|
||||
- Realistischere Routenplanung
|
||||
- Weniger verpasste Anschlüsse
|
||||
|
||||
---
|
||||
|
||||
## [13.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Routenplaner-View:** Neue Tab für Journey-Planning
|
||||
- **Start/Ziel-Suche:** Mit GPS-Unterstützung
|
||||
- **Alternative Routen:** Mehrere Optionen anzeigen
|
||||
|
||||
### 🎨 Changed
|
||||
- 2-Tab Navigation: Abfahrten | Route
|
||||
- Optimierte Layout-Struktur
|
||||
|
||||
---
|
||||
|
||||
## [12.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Auto-Refresh Toggle:** An/Aus Schalter im Header
|
||||
- **Smart Value Update:** Nur Values ändern, kein Re-Render
|
||||
|
||||
### 🎯 Changed
|
||||
- Performantere Refresh-Strategie
|
||||
- Weniger DOM-Manipulation
|
||||
|
||||
---
|
||||
|
||||
## [11.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **30s Auto-Refresh:** Automatische Aktualisierung alle 30 Sekunden
|
||||
- **Countdown-Anzeige:** "Auto-Refresh in: 28s"
|
||||
|
||||
### 🎨 Changed
|
||||
- Immer aktuelle Abfahrten ohne manuellen Refresh
|
||||
|
||||
---
|
||||
|
||||
## [10.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Pull-to-Refresh:** Touch-basiert auf Mobile
|
||||
- **Haptic Feedback:** Vibration bei Aktionen (navigator.vibrate)
|
||||
- **Loading-Spinner:** Während Refresh
|
||||
|
||||
### 🎨 Changed
|
||||
- Native App-ähnliches Verhalten
|
||||
- Bessere Mobile-UX
|
||||
|
||||
---
|
||||
|
||||
## [9.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Detaillierte Trip-Modal:** Per Tap auf Abfahrt
|
||||
- **Alle Zwischenstopps:** Mit Ankunfts-/Abfahrtszeiten
|
||||
- **Swipe-to-Close:** Auf Mobile
|
||||
|
||||
### 🎨 Changed
|
||||
- Mehr Informationen pro Trip
|
||||
- Bessere Detail-Ansicht
|
||||
|
||||
---
|
||||
|
||||
## [8.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Autocomplete-Suche:** Live-Vorschläge während Eingabe
|
||||
- **Keyboard-Navigation:** ↑↓ + Enter
|
||||
- **Touch-optimiert:** Große Tap-Targets
|
||||
|
||||
### 🎯 Changed
|
||||
- Schnellere Stations-Suche
|
||||
- Bessere UX
|
||||
|
||||
---
|
||||
|
||||
## [7.0] - 2025-12-31
|
||||
|
||||
### ✅ Added
|
||||
- **Offline-Modus:** Gespeicherte Abfahrten anzeigen
|
||||
- **Offline-Indikator:** "📵 Offline-Modus" Banner
|
||||
- **localStorage Caching:** Letzte Abfahrten speichern
|
||||
|
||||
### 🎨 Changed
|
||||
- App funktioniert auch ohne Internet
|
||||
- Cached Daten als Fallback
|
||||
|
||||
---
|
||||
|
||||
## [6.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Service Worker:** PWA-Funktionalität
|
||||
- **Offline-Caching:** Statische Assets cached
|
||||
- **Install-Prompt:** "Als App installieren"
|
||||
|
||||
### 🎨 Changed
|
||||
- App ist jetzt installierbar
|
||||
- Funktioniert offline
|
||||
|
||||
---
|
||||
|
||||
## [5.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **GPS-Standort:** Automatische Station finden
|
||||
- **"Standort verwenden" Button:** Mit Loading-State
|
||||
- **Fehlerbehandlung:** Wenn GPS fehlschlägt
|
||||
|
||||
### 🎨 Changed
|
||||
- Schnellerer Zugriff auf nahegelegene Stationen
|
||||
- Weniger manuelle Suche nötig
|
||||
|
||||
---
|
||||
|
||||
## [4.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Kategorie-Filter:** U-Bahn, S-Bahn, Tram, Bus, Fähre
|
||||
- **Default: Alle außer Bus/Fähre:** Weniger "noise"
|
||||
- **Toggle-Buttons:** An/Aus für jede Kategorie
|
||||
|
||||
### 🎨 Changed
|
||||
- Übersichtlichere Abfahrten-Liste
|
||||
- Fokus auf wichtige Linien
|
||||
|
||||
---
|
||||
|
||||
## [3.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Verspätungen:** Rot markiert mit Delay-Info
|
||||
- **Ausfälle:** Durchgestrichen mit "Fällt aus"
|
||||
- **Gleis/Steig:** Bei verfügbar angezeigt
|
||||
|
||||
### 🎨 Changed
|
||||
- Mehr Informationen pro Abfahrt
|
||||
- Bessere visuelle Unterscheidung
|
||||
|
||||
---
|
||||
|
||||
## [2.0] - 2025-12-31
|
||||
|
||||
### ✨ Added
|
||||
- **Live-Abfahrten:** Echtzeit-Daten von VBB API
|
||||
- **Relativer Countdown:** "in 3 Min" statt absoluter Zeit
|
||||
- **Verkehrsmittel-Icons:** 🚇🚊🚋🚌⛴️
|
||||
|
||||
### 🎨 Changed
|
||||
- Funktionale Abfahrtsanzeige
|
||||
- Echte Daten statt Mockups
|
||||
|
||||
---
|
||||
|
||||
## [1.0] - 2025-12-30
|
||||
|
||||
### ✨ Added
|
||||
- **Initial Release**
|
||||
- **Basic HTML/CSS/JS Structure**
|
||||
- **BVG-Styling:** DotMatrix Font + Gelb/Schwarz
|
||||
- **Responsive Design:** Mobile-First
|
||||
|
||||
### 🎨 Changed
|
||||
- Basis-Framework erstellt
|
||||
- Design-System etabliert
|
||||
|
||||
---
|
||||
|
||||
## Legende
|
||||
|
||||
- ✨ **Added:** Neue Features
|
||||
- 🎨 **Changed:** Änderungen an bestehenden Features
|
||||
- 🐛 **Fixed:** Bug-Fixes
|
||||
- 🎯 **Improved:** Performance/UX-Verbesserungen
|
||||
- ✅ **Completed:** Fertiggestellte Features
|
||||
- ⚠️ **Deprecated:** Veraltete Features
|
||||
- 🗑️ **Removed:** Entfernte Features
|
||||
|
||||
---
|
||||
|
||||
## Contributing
|
||||
|
||||
Wenn du einen Bug findest oder ein Feature vorschlagen möchtest, öffne bitte ein [GitHub Issue](https://github.com/Serverlele30/VBB-Status-Web-App/issues).
|
||||
|
||||
---
|
||||
|
||||
Made with ❤️ for Berlin & Brandenburg
|
||||
**Viel Erfolg mit der VBB Netz Status App! 🚇🚌🚊**
|
||||
+469
@@ -0,0 +1,469 @@
|
||||
# 🤝 Contributing Guide
|
||||
|
||||
Danke, dass du zu VBB Netz Status beitragen möchtest! Diese Anleitung hilft dir, loszulegen.
|
||||
|
||||
## 📋 Inhaltsverzeichnis
|
||||
|
||||
- [Code of Conduct](#code-of-conduct)
|
||||
- [Wie kann ich beitragen?](#wie-kann-ich-beitragen)
|
||||
- [Entwicklungsumgebung](#entwicklungsumgebung)
|
||||
- [Coding Standards](#coding-standards)
|
||||
- [Pull Request Prozess](#pull-request-prozess)
|
||||
- [Bug Reports](#bug-reports)
|
||||
- [Feature Requests](#feature-requests)
|
||||
|
||||
---
|
||||
|
||||
## 🤝 Code of Conduct
|
||||
|
||||
### Unsere Versprechen
|
||||
|
||||
- Respektvoller Umgang mit allen Contributors
|
||||
- Konstruktive, freundliche Diskussionen
|
||||
- Fokus auf das Beste für das Projekt und die Community
|
||||
- Akzeptanz von konstruktiver Kritik
|
||||
|
||||
### Unerwünschtes Verhalten
|
||||
|
||||
- Beleidigungen oder persönliche Angriffe
|
||||
- Trolling oder provozierende Kommentare
|
||||
- Veröffentlichung privater Informationen
|
||||
- Unprofessionelles Verhalten
|
||||
|
||||
---
|
||||
|
||||
## 💡 Wie kann ich beitragen?
|
||||
|
||||
### 1. Code Contributions
|
||||
|
||||
- **Bugfixes**: Behebe bekannte Bugs aus Issues
|
||||
- **Features**: Implementiere neue Features (nach Diskussion)
|
||||
- **Optimierungen**: Verbessere Performance oder Code-Qualität
|
||||
- **Tests**: Füge Tests hinzu (falls vorhanden)
|
||||
|
||||
### 2. Dokumentation
|
||||
|
||||
- **README verbessern**: Ergänze fehlende Informationen
|
||||
- **Code-Kommentare**: Dokumentiere komplexe Funktionen
|
||||
- **Tutorials**: Erstelle Anleitungen für Nutzer
|
||||
- **Übersetzungen**: Hilf bei mehrsprachiger Unterstützung
|
||||
|
||||
### 3. Design
|
||||
|
||||
- **UI/UX Verbesserungen**: Optimiere Benutzeroberfläche
|
||||
- **Icons & Assets**: Erstelle/verbessere Icons
|
||||
- **Responsive Design**: Verbessere Mobile/Desktop Layouts
|
||||
- **Accessibility**: Erhöhe Barrierefreiheit
|
||||
|
||||
### 4. Testing
|
||||
|
||||
- **Bug Testing**: Teste auf verschiedenen Geräten
|
||||
- **Browser Compatibility**: Prüfe verschiedene Browser
|
||||
- **Performance Testing**: Messe Ladezeiten & Optimierungen
|
||||
- **User Feedback**: Sammle Rückmeldungen von Nutzern
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Entwicklungsumgebung
|
||||
|
||||
### Setup
|
||||
|
||||
1. **Repository forken**
|
||||
```bash
|
||||
# Auf GitHub: Fork-Button klicken
|
||||
```
|
||||
|
||||
2. **Dein Fork klonen**
|
||||
```bash
|
||||
git clone https://github.com/DEIN_USERNAME/VBB-Status-Web-App.git
|
||||
cd VBB-Status-Web-App
|
||||
```
|
||||
|
||||
3. **Upstream Repository hinzufügen**
|
||||
```bash
|
||||
git remote add upstream https://github.com/Serverlele30/VBB-Status-Web-App.git
|
||||
```
|
||||
|
||||
4. **Dependencies installieren**
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
5. **Development Server starten**
|
||||
```bash
|
||||
npm start
|
||||
```
|
||||
|
||||
### Entwicklungs-Workflow
|
||||
|
||||
1. **Neuen Branch erstellen**
|
||||
```bash
|
||||
git checkout -b feature/deine-feature-beschreibung
|
||||
# oder
|
||||
git checkout -b fix/bug-beschreibung
|
||||
```
|
||||
|
||||
2. **Änderungen vornehmen**
|
||||
- Editiere `index.html`, `styles.css`, `script.js`
|
||||
- Teste lokal: `https://localhost:3000`
|
||||
|
||||
3. **Regelmäßig committen**
|
||||
```bash
|
||||
git add .
|
||||
git commit -m "feat: Kurze Beschreibung der Änderung"
|
||||
```
|
||||
|
||||
4. **Mit Upstream synchronisieren**
|
||||
```bash
|
||||
git fetch upstream
|
||||
git rebase upstream/main
|
||||
```
|
||||
|
||||
5. **Push zu deinem Fork**
|
||||
```bash
|
||||
git push origin feature/deine-feature-beschreibung
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📝 Coding Standards
|
||||
|
||||
### HTML
|
||||
|
||||
```html
|
||||
<!-- ✅ Gut: Saubere Struktur, semantisches HTML -->
|
||||
<section class="departure-list" aria-label="Abfahrten">
|
||||
<article class="departure-item">
|
||||
<h3>Alexanderplatz</h3>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<!-- ❌ Schlecht: Keine Semantik, unleserlich -->
|
||||
<div class="dl"><div class="di"><div>Alexanderplatz</div></div></div>
|
||||
```
|
||||
|
||||
### CSS
|
||||
|
||||
```css
|
||||
/* ✅ Gut: BEM-ähnliche Konvention, kommentiert */
|
||||
/* Departure Item Container */
|
||||
.departure-item {
|
||||
padding: 15px;
|
||||
background-color: #0a0a0a;
|
||||
}
|
||||
|
||||
.departure-item__header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
/* ❌ Schlecht: Unklar, keine Kommentare */
|
||||
.di {
|
||||
padding: 15px;
|
||||
}
|
||||
```
|
||||
|
||||
### JavaScript
|
||||
|
||||
```javascript
|
||||
// ✅ Gut: Beschreibende Namen, Kommentare, Error Handling
|
||||
async function loadDepartures(stationId) {
|
||||
try {
|
||||
const response = await fetch(`${API_BASE}/stops/${stationId}/departures`);
|
||||
if (!response.ok) throw new Error('API Error');
|
||||
|
||||
const data = await response.json();
|
||||
return data.departures;
|
||||
} catch (error) {
|
||||
console.error('Failed to load departures:', error);
|
||||
showErrorMessage('Abfahrten konnten nicht geladen werden');
|
||||
return [];
|
||||
}
|
||||
}
|
||||
|
||||
// ❌ Schlecht: Kryptische Namen, kein Error Handling
|
||||
async function ld(s) {
|
||||
const r = await fetch(`${API_BASE}/stops/${s}/departures`);
|
||||
return await r.json();
|
||||
}
|
||||
```
|
||||
|
||||
### Commit Messages
|
||||
|
||||
Folge [Conventional Commits](https://www.conventionalcommits.org/):
|
||||
|
||||
```bash
|
||||
# Format: <type>(<scope>): <subject>
|
||||
|
||||
# Typen:
|
||||
feat: # Neues Feature
|
||||
fix: # Bugfix
|
||||
docs: # Dokumentation
|
||||
style: # Formatierung (kein Code-Change)
|
||||
refactor: # Code-Refactoring
|
||||
perf: # Performance-Verbesserung
|
||||
test: # Tests hinzufügen
|
||||
chore: # Build, Dependencies
|
||||
|
||||
# Beispiele:
|
||||
git commit -m "feat(live-map): Add vehicle type filter"
|
||||
git commit -m "fix(departures): Handle empty API response"
|
||||
git commit -m "docs(readme): Update installation instructions"
|
||||
git commit -m "style(css): Format departure items"
|
||||
git commit -m "perf(api): Cache API responses for 30s"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔀 Pull Request Prozess
|
||||
|
||||
### 1. Vorbereitung
|
||||
|
||||
- [ ] Code funktioniert lokal
|
||||
- [ ] Keine Console Errors
|
||||
- [ ] Responsive Design getestet
|
||||
- [ ] Code kommentiert
|
||||
- [ ] CHANGELOG.md aktualisiert (bei größeren Changes)
|
||||
|
||||
### 2. Pull Request erstellen
|
||||
|
||||
1. Gehe zu deinem Fork auf GitHub
|
||||
2. Klicke "Pull Request" → "New Pull Request"
|
||||
3. Base: `Serverlele30/VBB-Status-Web-App` → `main`
|
||||
4. Compare: `dein-username/VBB-Status-Web-App` → `dein-branch`
|
||||
|
||||
### 3. PR Beschreibung
|
||||
|
||||
```markdown
|
||||
## Beschreibung
|
||||
Kurze Zusammenfassung der Änderungen
|
||||
|
||||
## Typ der Änderung
|
||||
- [ ] Bugfix
|
||||
- [ ] Neues Feature
|
||||
- [ ] Breaking Change
|
||||
- [ ] Dokumentation
|
||||
|
||||
## Wie getestet?
|
||||
- [ ] Chrome Desktop
|
||||
- [ ] Firefox Desktop
|
||||
- [ ] Safari Mobile
|
||||
- [ ] Chrome Mobile
|
||||
|
||||
## Screenshots (falls UI-Änderungen)
|
||||
[Screenshot hier einfügen]
|
||||
|
||||
## Checklist
|
||||
- [ ] Code folgt Style Guide
|
||||
- [ ] Selbst-Review durchgeführt
|
||||
- [ ] Kommentare hinzugefügt
|
||||
- [ ] CHANGELOG.md aktualisiert
|
||||
- [ ] Keine neuen Warnings
|
||||
```
|
||||
|
||||
### 4. Review Prozess
|
||||
|
||||
- Maintainer werden deinen PR prüfen
|
||||
- Möglicherweise werden Änderungen angefragt
|
||||
- Nach Approval: Merge in main branch
|
||||
- Branch kann gelöscht werden
|
||||
|
||||
---
|
||||
|
||||
## 🐛 Bug Reports
|
||||
|
||||
### Gutes Bug Report Template:
|
||||
|
||||
```markdown
|
||||
**Beschreibung des Bugs**
|
||||
Kurze, klare Beschreibung was passiert.
|
||||
|
||||
**Reproduktion**
|
||||
Schritte um den Bug zu reproduzieren:
|
||||
1. Gehe zu '...'
|
||||
2. Klicke auf '...'
|
||||
3. Scrolle nach '...'
|
||||
4. Sieh Fehler
|
||||
|
||||
**Erwartetes Verhalten**
|
||||
Was sollte stattdessen passieren?
|
||||
|
||||
**Screenshots**
|
||||
Falls zutreffend, füge Screenshots hinzu.
|
||||
|
||||
**Umgebung:**
|
||||
- Browser: [z.B. Chrome 120, Firefox 121]
|
||||
- OS: [z.B. Windows 11, macOS 14, iOS 17]
|
||||
- App Version: [z.B. v30.0.0]
|
||||
- Mobile/Desktop: [z.B. iPhone 15 Pro]
|
||||
|
||||
**Zusätzlicher Kontext**
|
||||
Console Errors, Network Logs, etc.
|
||||
```
|
||||
|
||||
### Bug Issue erstellen:
|
||||
|
||||
1. Gehe zu: https://github.com/Serverlele30/VBB-Status-Web-App/issues
|
||||
2. Klicke "New Issue"
|
||||
3. Label: `bug`
|
||||
4. Fülle Template aus
|
||||
|
||||
---
|
||||
|
||||
## 💡 Feature Requests
|
||||
|
||||
### Gutes Feature Request Template:
|
||||
|
||||
```markdown
|
||||
**Problem/Motivation**
|
||||
Welches Problem würde dieses Feature lösen?
|
||||
Beispiel: "Es ist schwierig, Favoriten-Stationen zu speichern..."
|
||||
|
||||
**Vorgeschlagene Lösung**
|
||||
Wie könnte das Feature implementiert werden?
|
||||
Beispiel: "Ein 'Favoriten'-Button neben jeder Station..."
|
||||
|
||||
**Alternativen**
|
||||
Welche anderen Lösungen hast du in Betracht gezogen?
|
||||
|
||||
**Mockups/Wireframes**
|
||||
Falls vorhanden, füge Design-Ideen hinzu.
|
||||
|
||||
**Zusätzlicher Kontext**
|
||||
Andere Apps die ähnliche Features haben, etc.
|
||||
```
|
||||
|
||||
### Feature Request erstellen:
|
||||
|
||||
1. Gehe zu Issues
|
||||
2. Label: `enhancement`
|
||||
3. Diskutiere Feature mit Maintainern
|
||||
4. Nach Approval: Implementierung starten
|
||||
|
||||
---
|
||||
|
||||
## 🎨 Design Guidelines
|
||||
|
||||
### Farbschema
|
||||
|
||||
```css
|
||||
/* Primärfarben */
|
||||
--yellow: #FFED00; /* BVG Gelb */
|
||||
--black: #000000; /* Hintergrund */
|
||||
--white: #FFFFFF; /* Text */
|
||||
|
||||
/* Linienfarben (BVG Standard) */
|
||||
--u1: #55A823; /* U1 Grün */
|
||||
--u2: #C00000; /* U2 Rot */
|
||||
--u3: #028D4C; /* U3 Grün */
|
||||
/* ... siehe styles.css für alle Linien */
|
||||
|
||||
/* Graustufen */
|
||||
--gray-dark: #1a1a1a;
|
||||
--gray-medium: #333333;
|
||||
--gray-light: #666666;
|
||||
```
|
||||
|
||||
### Typografie
|
||||
|
||||
```css
|
||||
/* Hauptschrift: DotMatrix (Retro BVG-Look) */
|
||||
font-family: 'DotMatrix', 'Courier New', monospace;
|
||||
|
||||
/* Größen */
|
||||
--text-xs: 10px;
|
||||
--text-sm: 12px;
|
||||
--text-base: 14px;
|
||||
--text-lg: 16px;
|
||||
--text-xl: 20px;
|
||||
--text-2xl: 24px;
|
||||
--text-3xl: 32px;
|
||||
```
|
||||
|
||||
### Spacing
|
||||
|
||||
```css
|
||||
/* 4px Base Unit */
|
||||
--spacing-1: 4px;
|
||||
--spacing-2: 8px;
|
||||
--spacing-3: 12px;
|
||||
--spacing-4: 16px;
|
||||
--spacing-5: 20px;
|
||||
--spacing-6: 24px;
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🧪 Testing Checklist
|
||||
|
||||
Vor Pull Request:
|
||||
|
||||
### Browser Compatibility
|
||||
- [ ] Chrome (neueste Version)
|
||||
- [ ] Firefox (neueste Version)
|
||||
- [ ] Safari (neueste Version)
|
||||
- [ ] Edge (neueste Version)
|
||||
|
||||
### Geräte
|
||||
- [ ] Desktop (1920x1080+)
|
||||
- [ ] Laptop (1366x768)
|
||||
- [ ] Tablet (768x1024)
|
||||
- [ ] Mobile (375x667 - iPhone SE)
|
||||
- [ ] Mobile (414x896 - iPhone 11)
|
||||
|
||||
### Features
|
||||
- [ ] Abfahrten laden funktioniert
|
||||
- [ ] Routenplanung funktioniert
|
||||
- [ ] Live-Map zeigt Fahrzeuge
|
||||
- [ ] Service Worker cached korrekt
|
||||
- [ ] PWA Installation funktioniert
|
||||
- [ ] Offline-Modus funktioniert
|
||||
|
||||
### Performance
|
||||
- [ ] Ladezeit < 3s
|
||||
- [ ] Keine Memory Leaks
|
||||
- [ ] Smooth Scrolling
|
||||
- [ ] Keine Layout Shifts
|
||||
|
||||
---
|
||||
|
||||
## 📚 Ressourcen
|
||||
|
||||
### APIs
|
||||
- **VBB API**: https://v6.vbb.transport.rest/api.html
|
||||
- **BVG Farben**: Siehe `getBVGLineColor()` in script.js
|
||||
|
||||
### Libraries
|
||||
- **Leaflet.js**: https://leafletjs.com/
|
||||
- **Leaflet Docs**: https://leafletjs.com/reference.html
|
||||
|
||||
### Tools
|
||||
- **Chrome DevTools**: Browser Console, Network Tab
|
||||
- **Lighthouse**: Performance Audit
|
||||
- **Can I Use**: Browser Compatibility Check
|
||||
|
||||
---
|
||||
|
||||
## ❓ Fragen?
|
||||
|
||||
Bei Fragen:
|
||||
|
||||
1. **GitHub Discussions**: (falls aktiviert)
|
||||
2. **Issues**: Stelle Fragen als Issue mit Label `question`
|
||||
3. **README/Docs**: Prüfe vorhandene Dokumentation
|
||||
|
||||
---
|
||||
|
||||
## 🎉 Danke!
|
||||
|
||||
Vielen Dank für dein Interesse an VBB Netz Status! Jeder Beitrag, egal wie klein, hilft das Projekt zu verbessern.
|
||||
|
||||
**Happy Coding! 🚇🚌🚊**
|
||||
|
||||
---
|
||||
|
||||
**Maintainer:**
|
||||
- Aaron K. ([@Serverlele30](https://github.com/Serverlele30))
|
||||
- Claude (Anthropic)
|
||||
|
||||
**Lizenz:** MIT
|
||||
+310
@@ -0,0 +1,310 @@
|
||||
# 🚀 Installation & Setup
|
||||
|
||||
Diese Anleitung führt dich Schritt für Schritt durch die Installation der VBB Netz Status App.
|
||||
|
||||
## 📋 Voraussetzungen
|
||||
|
||||
### Erforderlich:
|
||||
- **Node.js** v16.0.0 oder höher
|
||||
- **npm** v8.0.0 oder höher
|
||||
- **OpenSSL** (für HTTPS-Zertifikate)
|
||||
|
||||
### Optional:
|
||||
- **Git** (zum Klonen des Repositories)
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Installation
|
||||
|
||||
### Option 1: Mit Git
|
||||
|
||||
```bash
|
||||
# Repository klonen
|
||||
git clone https://github.com/Serverlele30/VBB-Status-Web-App.git
|
||||
|
||||
# In Projektverzeichnis wechseln
|
||||
cd VBB-Status-Web-App
|
||||
|
||||
# Abhängigkeiten installieren
|
||||
npm install
|
||||
```
|
||||
|
||||
### Option 2: Download als ZIP
|
||||
|
||||
1. Repository als ZIP herunterladen
|
||||
2. ZIP entpacken
|
||||
3. Terminal/Kommandozeile öffnen
|
||||
4. In Projektverzeichnis navigieren
|
||||
5. Abhängigkeiten installieren:
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ▶️ Server starten
|
||||
|
||||
### Entwicklungsserver (HTTPS)
|
||||
|
||||
```bash
|
||||
npm start
|
||||
# oder
|
||||
npm run dev
|
||||
```
|
||||
|
||||
Der Server startet automatisch auf `https://localhost:3000`
|
||||
|
||||
### Beim ersten Start:
|
||||
|
||||
1. **SSL-Zertifikat wird generiert**
|
||||
- Der Server erstellt automatisch ein selbstsigniertes Zertifikat
|
||||
- Gespeichert in: `./certs/`
|
||||
|
||||
2. **Browser-Warnung akzeptieren**
|
||||
- Chrome/Edge: "Erweitert" → "Weiter zu localhost"
|
||||
- Firefox: "Erweitert" → "Ausnahme hinzufügen"
|
||||
- Safari: "Details" → "Diese Website besuchen"
|
||||
|
||||
3. **App öffnet sich**
|
||||
- URL: `https://localhost:3000`
|
||||
- Die App lädt automatisch
|
||||
|
||||
---
|
||||
|
||||
## 📱 Mobile Testing
|
||||
|
||||
### Im lokalen Netzwerk testen:
|
||||
|
||||
1. **IP-Adresse finden:**
|
||||
|
||||
**Windows:**
|
||||
```bash
|
||||
ipconfig
|
||||
# Suche nach "IPv4-Adresse"
|
||||
```
|
||||
|
||||
**Mac/Linux:**
|
||||
```bash
|
||||
ifconfig
|
||||
# oder
|
||||
ip addr show
|
||||
```
|
||||
|
||||
2. **Auf Mobile-Gerät öffnen:**
|
||||
```
|
||||
https://DEINE_IP:3000
|
||||
```
|
||||
Beispiel: `https://192.168.1.100:3000`
|
||||
|
||||
3. **Zertifikatswarnung akzeptieren**
|
||||
- Auf dem Smartphone die Warnung bestätigen
|
||||
- "Trotzdem fortfahren" wählen
|
||||
|
||||
---
|
||||
|
||||
## 🏗️ Projektstruktur
|
||||
|
||||
```
|
||||
vbb-netz-status/
|
||||
├── index.html # HTML-Struktur
|
||||
├── styles.css # Alle Styles (Dark Mode, Responsive)
|
||||
├── script.js # App-Logik (Abfahrten, Routen, Live-Map)
|
||||
├── server.js # HTTPS-Development-Server
|
||||
├── service-worker.js # PWA Service Worker (Offline)
|
||||
├── manifest.json # PWA Manifest (Installation)
|
||||
├── package.json # Node.js Konfiguration
|
||||
├── LICENSE # MIT Lizenz
|
||||
├── README.md # Projekt-Dokumentation
|
||||
├── CHANGELOG.md # Versions-Historie
|
||||
├── INSTALLATION.md # Diese Datei
|
||||
├── .gitignore # Git-Ignore-Liste
|
||||
├── certs/ # SSL-Zertifikate (auto-generiert)
|
||||
│ ├── cert.pem
|
||||
│ └── key.pem
|
||||
└── images/ # App-Assets (Icons, Favicons)
|
||||
└── favicon.png
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔐 HTTPS & SSL-Zertifikate
|
||||
|
||||
### Warum HTTPS?
|
||||
|
||||
- **PWA-Anforderung**: Service Worker benötigt HTTPS
|
||||
- **Geolocation API**: Browser verlangen sichere Verbindung
|
||||
- **Best Practice**: Moderne Web-Standards
|
||||
|
||||
### Zertifikate neu generieren:
|
||||
|
||||
```bash
|
||||
# Alte Zertifikate löschen
|
||||
rm -rf certs/
|
||||
|
||||
# Server neu starten (generiert automatisch neue)
|
||||
npm start
|
||||
```
|
||||
|
||||
### Manuell generieren (falls OpenSSL verfügbar):
|
||||
|
||||
```bash
|
||||
mkdir -p certs
|
||||
openssl req -x509 -newkey rsa:4096 -keyout certs/key.pem -out certs/cert.pem -days 365 -nodes -subj "/CN=localhost"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🐛 Troubleshooting
|
||||
|
||||
### Problem: "npm: command not found"
|
||||
|
||||
**Lösung:** Node.js installieren
|
||||
- Download: https://nodejs.org/
|
||||
- Empfohlen: LTS-Version
|
||||
|
||||
### Problem: "Port 3000 already in use"
|
||||
|
||||
**Lösung 1:** Anderen Prozess beenden
|
||||
```bash
|
||||
# Windows
|
||||
netstat -ano | findstr :3000
|
||||
taskkill /PID <PID> /F
|
||||
|
||||
# Mac/Linux
|
||||
lsof -ti:3000 | xargs kill -9
|
||||
```
|
||||
|
||||
**Lösung 2:** Port in `server.js` ändern
|
||||
```javascript
|
||||
const PORT = 3001; // Statt 3000
|
||||
```
|
||||
|
||||
### Problem: "OpenSSL not found"
|
||||
|
||||
**Lösung (Windows):**
|
||||
1. Git Bash verwenden (enthält OpenSSL)
|
||||
2. Oder OpenSSL separat installieren: https://slproweb.com/products/Win32OpenSSL.html
|
||||
|
||||
**Lösung (Mac):**
|
||||
```bash
|
||||
brew install openssl
|
||||
```
|
||||
|
||||
**Lösung (Linux):**
|
||||
```bash
|
||||
sudo apt-get install openssl
|
||||
```
|
||||
|
||||
### Problem: "Cannot GET /"
|
||||
|
||||
**Lösung:** Stelle sicher, dass alle Dateien vorhanden sind:
|
||||
```bash
|
||||
ls -la
|
||||
# Sollte index.html, styles.css, script.js enthalten
|
||||
```
|
||||
|
||||
### Problem: Service Worker funktioniert nicht
|
||||
|
||||
**Lösung:**
|
||||
1. Browser-Cache leeren (Ctrl+Shift+Del)
|
||||
2. Service Worker deregistrieren:
|
||||
- Chrome DevTools → Application → Service Workers → Unregister
|
||||
3. Seite neu laden (Ctrl+F5)
|
||||
|
||||
---
|
||||
|
||||
## 🎨 Anpassungen
|
||||
|
||||
### Port ändern:
|
||||
|
||||
In `server.js`:
|
||||
```javascript
|
||||
const PORT = 3001; // Dein gewünschter Port
|
||||
```
|
||||
|
||||
### Cache-Version ändern:
|
||||
|
||||
In `service-worker.js`:
|
||||
```javascript
|
||||
const CACHE_NAME = 'vbb-status-v31'; // Neue Version
|
||||
```
|
||||
|
||||
### Farben anpassen:
|
||||
|
||||
In `styles.css`:
|
||||
```css
|
||||
/* Hauptfarbe ändern */
|
||||
--primary-color: #FFED00; /* BVG Gelb */
|
||||
--background-color: #000; /* Schwarz */
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📦 Dependencies
|
||||
|
||||
### Produktions-Dependencies:
|
||||
- **mime-types** (^2.1.35): MIME-Type Detection für Server
|
||||
|
||||
### Keine Dev-Dependencies:
|
||||
- Projekt läuft ohne Build-Prozess
|
||||
- Keine Transpiler oder Bundler nötig
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Deployment
|
||||
|
||||
### Für Produktion:
|
||||
|
||||
1. **Statisches Hosting** (Empfohlen):
|
||||
- GitHub Pages
|
||||
- Netlify
|
||||
- Vercel
|
||||
- Cloudflare Pages
|
||||
|
||||
2. **Node.js Server** (Optional):
|
||||
- Heroku
|
||||
- DigitalOcean
|
||||
- AWS
|
||||
- Google Cloud
|
||||
|
||||
### GitHub Pages Deployment:
|
||||
|
||||
```bash
|
||||
# Für GitHub Pages
|
||||
git add .
|
||||
git commit -m "Deploy to GitHub Pages"
|
||||
git push origin main
|
||||
|
||||
# Settings → Pages → Source: main branch
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📞 Support
|
||||
|
||||
Bei Problemen oder Fragen:
|
||||
|
||||
1. **GitHub Issues**: https://github.com/Serverlele30/VBB-Status-Web-App/issues
|
||||
2. **README konsultieren**: Enthält zusätzliche Infos
|
||||
3. **CHANGELOG prüfen**: Bekannte Probleme und Fixes
|
||||
|
||||
---
|
||||
|
||||
## ✅ Checkliste nach Installation
|
||||
|
||||
- [ ] Node.js installiert (v16+)
|
||||
- [ ] npm installiert (v8+)
|
||||
- [ ] Repository geklont/heruntergeladen
|
||||
- [ ] `npm install` ausgeführt
|
||||
- [ ] Server startet ohne Fehler
|
||||
- [ ] `https://localhost:3000` öffnet die App
|
||||
- [ ] Zertifikatswarnung akzeptiert
|
||||
- [ ] Mobile-Testing funktioniert (optional)
|
||||
- [ ] PWA installiert (optional)
|
||||
|
||||
---
|
||||
|
||||
**🎉 Viel Erfolg mit der VBB Netz Status App!**
|
||||
|
||||
Entwickelt von Aaron K. & Claude (Anthropic)
|
||||
Lizenz: MIT
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "vbb-netz-status",
|
||||
"version": "29.0.0",
|
||||
"version": "30.0.0",
|
||||
"description": "Live-Nahverkehr für Berlin & Brandenburg - Progressive Web App (PWA) für Echtzeit-Abfahrten, Routenplanung und Live-Fahrzeugverfolgung im VBB-Gebiet",
|
||||
"main": "server.js",
|
||||
"scripts": {
|
||||
|
||||
+3
-1
@@ -1,7 +1,9 @@
|
||||
const CACHE_NAME = 'vbb-status-v29';
|
||||
const CACHE_NAME = 'vbb-status-v30';
|
||||
const urlsToCache = [
|
||||
'/',
|
||||
'/index.html',
|
||||
'/styles.css',
|
||||
'/script.js',
|
||||
'/manifest.json',
|
||||
'/DotMatrix.ttf',
|
||||
'/images/favicon.png'
|
||||
|
||||
Reference in new issue
Block a user