commit 0397ec573bc305a2690193f943b3be3d3a6a3d86 Author: Till Heidrich Date: Thu Jun 4 08:02:20 2026 +0000 Urlaub 2026: Vergleich, Karte, 3 Empfehlungen, Sterne-Voting (Node+Voting-API) diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..afa8364 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +node_modules/ +data/ +_t/ +*.log +.DS_Store diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..88e5f30 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM node:20-alpine +WORKDIR /app +COPY package.json ./ +COPY server.js ./ +COPY public ./public +RUN mkdir -p /data +ENV PORT=80 +ENV DATA_DIR=/data +EXPOSE 80 +CMD ["node", "server.js"] diff --git a/README.md b/README.md new file mode 100644 index 0000000..1fd67cb --- /dev/null +++ b/README.md @@ -0,0 +1,18 @@ +# Urlaub 2026 – Familie Heidrich + +Vergleichs- und Abstimmungsseite für den Sommerurlaub 2026 (Kroatien / Kanaren / Madeira / AIDA-Kreuzfahrt). + +- **Vergleich:** Hotels & Kreuzfahrt mit Fotos (Check24 / AIDA), Karte (Leaflet), Preisen und Mietwagen-Schätzung. +- **3 Empfehlungen** familien-gewichtet inkl. geschätztem Gesamtpreis. +- **Abstimmung:** Till, Lea und Astrid vergeben je 1–5 Sterne pro Option. Ergebnis live, serverseitig gespeichert, zurücksetzbar. + +## Technik +- Zero-Dependency Node-Server (`server.js`), statische Seite unter `public/`. +- Voting-API: `GET /api/state`, `POST /api/vote {voter,option,stars}`, `POST /api/reset`. +- Persistenz: JSON-Datei unter `/data` (Coolify Persistent Volume). +- Deploy: Dockerfile, Port 80. + +## Lokal starten +```bash +node server.js # http://localhost:80 (oder PORT=3000 node server.js) +``` diff --git a/package.json b/package.json new file mode 100644 index 0000000..9e889af --- /dev/null +++ b/package.json @@ -0,0 +1,12 @@ +{ + "name": "urlaubsvergleich-2026", + "version": "1.0.0", + "private": true, + "description": "Urlaubsvergleich 2026 – Familie Heidrich (Hotels, AIDA, Voting)", + "scripts": { + "start": "node server.js" + }, + "engines": { + "node": ">=18" + } +} diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..258fa23 --- /dev/null +++ b/public/index.html @@ -0,0 +1,537 @@ + + + + + + +Urlaub 2026 – Familie Heidrich · Vergleich & Abstimmung + + + + + + +
+
+ Wer bist du? +
+ + 🏆 Ergebnis +
+
+ + +
+
+
+
+

Wohin im Sommer 2026? 🌅

+

Hotels & AIDA-Kreuzfahrt im Vergleich – mit Fotos, Karte, Preisen und Mietwagen-Schätzung. Till, Lea und Astrid geben jeweils Sterne ab, unten seht ihr das Familien-Ergebnis.

+
+ 👨‍👩‍👦 4 Personen (Till, Lea, Felix 3 J., Astrid) + 📅 ~11.–21. Juli 2026 + 🧳 3 große Koffer + 🚗 max. 2 h Fahrt +
+
+
+ +
+ + +
+

🎯 Unsere 3 Empfehlungen

+

Familien-gewichtet (kleiner Felix, entspannt für Astrid, kurze Wege). Preise als Orientierung für 4 Personen – Hotelpreise auf Check24 mit eurer Belegung gegenprüfen.

+
+
💡 Mietwagen für 4 Pers. + 3 große Koffer = mind. Kombi (z. B. VW Passat Variant) oder Kompakt-SUV/Van (Touran, Qashqai) – kein Kleinwagen. Hochsaison Juli: Kroatien ab Split ~60–80 €/Tag, Kanaren ~45–60 €/Tag.
+
+ + +
+

🗺️ Alles auf einer Karte

+

Hotels als Punkte, die AIDA-Route als Linie. Tippe auf einen Marker für Details & Link.

+
+
+ Kroatien + Kanaren + Madeira + AIDA-Route + ⭐ = unsere Empfehlung +
+
+ + +
+ + +
+

🏆 Familien-Ergebnis

+

Durchschnitt aller abgegebenen Sterne. Aktualisiert sich live, sobald jemand abstimmt.

+
+
+
+ Stand wird auf dem Server gespeichert – alle drei sehen dasselbe. +
+ ✓ gespeichert + +
+
+
+
+ +
+ Fotos & Hoteldaten: Check24 · Kreuzfahrt: AIDA / Ahoi-Schiff.de · Karten: OpenStreetMap. + Preise & Verfügbarkeit ändern sich laufend – bitte vor Buchung prüfen. Erstellt für Familie Heidrich. +
+
+ + +