Eine festliche, responsive Website für die Silvester-Planung mit kollaborativer Einkaufsliste, optimiert für GitHub Pages.
- 🎨 Festliches Black & Gold Design
- 📱 Responsive Layout für alle Geräte
- ✅ Kollaborative Einkaufsliste mit Firebase Realtime Database
- ⚡ Echtzeit-Synchronisation zwischen allen Benutzern
- 🚀 Einfache GitHub Pages Deployment
- Erstelle ein neues GitHub Repository (z.B.
silvester-party) - Lade alle Dateien hoch:
index.htmlstyles.cssscript.jsfirebase-config.jsREADME.md
- Gehe zu deinem Repository auf GitHub
- Klicke auf Settings > Pages
- Unter Source wähle Deploy from a branch
- Wähle main (oder
master) Branch und/ (root)Ordner - Klicke auf Save
- Die Website ist nach ein paar Minuten verfügbar unter:
https://[DEIN-USERNAME].github.io/[REPOSITORY-NAME]/
- Gehe zu Firebase Console
- Klicke auf Add project oder wähle ein bestehendes Projekt
- Folge den Anweisungen zum Erstellen des Projekts
- Im Firebase Console, gehe zu Build > Firestore Database
- Klicke auf Create Database
- Wähle einen Standort (z.B.
europe-west1) - Starte im Testmodus (für schnelles Setup)
- Klicke auf Enable
- Gehe zu Project Settings (Zahnrad-Symbol)
- Scrolle nach unten zu Your apps
- Falls noch keine Web-App vorhanden, klicke auf </> Icon
- Registriere die App (Name: z.B. "Silvester Party")
- Kopiere die Firebase-Konfiguration
- Öffne
firebase-config.jsin deinem Editor - Ersetze die Platzhalter mit deinen Firebase-Werten:
const firebaseConfig = {
apiKey: 'DEINE_API_KEY',
authDomain: 'DEIN_PROJECT_ID.firebaseapp.com',
projectId: 'DEIN_PROJECT_ID',
storageBucket: 'DEIN_PROJECT_ID.firebasestorage.app',
messagingSenderId: 'DEINE_MESSAGING_SENDER_ID',
appId: 'DEINE_APP_ID'
};- Gehe zu Firestore Database > Rules
- Ersetze die Rules mit folgendem (für öffentlichen Lese-/Schreibzugriff):
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /shoppingList/{itemId} {
allow read, write: if true;
}
}
}Wichtig: Diese Rules erlauben öffentlichen Zugriff. Für Produktionsumgebungen sollten Sie Authentifizierung implementieren.
- Klicke auf Publish
- Klone das Repository:
git clone https://github.com/[DEIN-USERNAME]/[REPOSITORY-NAME].git
cd [REPOSITORY-NAME]-
Öffne
firebase-config.jsund füge deine Firebase-Konfiguration ein -
Öffne
index.htmlin einem Browser oder nutze einen lokalen Server:
# Mit Python
python -m http.server 8000
# Mit Node.js (http-server)
npx http-server
# Mit PHP
php -S localhost:8000- Öffne
http://localhost:8000im Browser
silvester-party/
├── index.html # Haupt-HTML-Datei
├── css/
│ ├── variables.css # CSS Variablen & Basis-Styles
│ ├── layout.css # Navigation, Hero, Sections
│ ├── components.css # Komponenten (Shopping List, Timeline, etc.)
│ └── responsive.css # Media Queries für responsive Design
├── script.js # Firebase Integration & Interaktivität
├── firebase-config.js # Firebase Konfiguration (hier eintragen!)
├── README.md # Diese Datei
└── plan.md # Original Planungsdokument
- Einkaufsliste: Alle Checkboxen sind mit Firebase Firestore verbunden
- Echtzeit-Sync: Änderungen eines Benutzers erscheinen sofort bei allen anderen
- Status-Anzeige: Zeigt den Verbindungsstatus zu Firebase an
- Offline-Funktion: Funktioniert auch ohne Firebase (lokale Checkboxen)
- Prüfe, ob
firebase-config.jskorrekt ausgefüllt ist - Prüfe die Browser-Konsole auf Fehlermeldungen (F12)
- Stelle sicher, dass Firestore Database aktiviert ist
- Prüfe die Security Rules in Firebase Console
- Prüfe die Browser-Konsole auf Fehler
- Stelle sicher, dass Firestore im Testmodus läuft oder die Security Rules korrekt sind
- Prüfe in Firebase Console > Firestore Database > Data, ob Daten gespeichert werden
- Warte 1-2 Minuten (GitHub Pages braucht Zeit zum Aktualisieren)
- Leere den Browser-Cache (Strg+F5)
- Prüfe, ob alle Dateien committed und gepusht wurden
Dieses Projekt ist für private Nutzung erstellt.
Bei Fragen oder Problemen, erstelle ein Issue im GitHub Repository.