From 4ccec275fd8a989ce08659284bb385dcedaf263f Mon Sep 17 00:00:00 2001 From: Bernhard Kolb Date: Tue, 14 Apr 2026 14:18:18 +0200 Subject: [PATCH] zwischenversion --- app.py | 4 + deploy_flask.sh | 79 ++++------ templates/base.html | 295 ++---------------------------------- templates/home.html | 81 +++++----- templates/impressum.html | 47 +++++- templates/kontakt.html | 22 ++- templates/styles/styles.css | 260 +++++++++++++++++++++++++++++++ 7 files changed, 394 insertions(+), 394 deletions(-) create mode 100644 templates/styles/styles.css diff --git a/app.py b/app.py index c1398b9..3256a28 100644 --- a/app.py +++ b/app.py @@ -15,5 +15,9 @@ def impressum(): def kontakt(): return render_template("kontakt.html") +@app.route("/datenschutz") +def datenschutz(): + return render_template("datenschutz.html") + if __name__ == "__main__": app.run(host="0.0.0.0", port=5000) \ No newline at end of file diff --git a/deploy_flask.sh b/deploy_flask.sh index 7ab1277..df8f56a 100644 --- a/deploy_flask.sh +++ b/deploy_flask.sh @@ -2,22 +2,21 @@ set -euo pipefail SRC_ROOT="/Volumes/MacBook SD/Projekte/HebammeKrystyna" -DST_ROOT="/Volumes/docker/flask-postgres/app-hebammekrystyna" + +APP_DST="/Volumes/docker/flask-postgres/app-hebammekrystyna" +ASSET_DST="/Volumes/docker/flask-postgres/hebammekrystyna" NAS_USER="BKolb" NAS_HOST="192.168.0.10" CONTAINER_NAME="flask_hebammekrystyna" -echo "🚀 Starte Deployment..." +echo "Starte Deployment..." -[ -d "$SRC_ROOT" ] || { echo "❌ Quelle fehlt: $SRC_ROOT"; exit 1; } -[ -d "$DST_ROOT" ] || { echo "❌ Ziel fehlt: $DST_ROOT"; exit 1; } - -######################################## -# 1. CORE CODE (ohne images/styles/files) -######################################## -echo "📦 Synchronisiere Core-Projektdateien ..." +[ -d "$SRC_ROOT" ] || { echo "Quelle fehlt: $SRC_ROOT"; exit 1; } +[ -d "$APP_DST" ] || { echo "App-Ziel fehlt: $APP_DST"; exit 1; } +[ -d "$ASSET_DST" ] || { echo "Asset-Ziel fehlt: $ASSET_DST"; exit 1; } +echo "Synchronisiere Projektdateien nach $APP_DST ..." rsync -av --delete \ --exclude '.DS_Store' \ --exclude '._*' \ @@ -32,71 +31,45 @@ rsync -av --delete \ --exclude 'files/' \ --exclude 'images/' \ --exclude 'styles/' \ - "$SRC_ROOT/" "$DST_ROOT/" - -######################################## -# 2. IMAGES -######################################## -echo "🖼️ Synchronisiere images/ ..." + "$SRC_ROOT/" "$APP_DST/" +echo "Synchronisiere images/ nach $ASSET_DST/images ..." if [ -d "$SRC_ROOT/images" ]; then - mkdir -p "$DST_ROOT/images" - + mkdir -p "$ASSET_DST/images" rsync -av --delete \ --exclude '.DS_Store' \ --exclude '._*' \ - "$SRC_ROOT/images/" "$DST_ROOT/images/" + --exclude 'videos/' \ + "$SRC_ROOT/images/" "$ASSET_DST/images/" else - echo "⚠️ images/ nicht gefunden – übersprungen." + echo "Hinweis: $SRC_ROOT/images nicht gefunden, übersprungen." fi -######################################## -# 3. STYLES -######################################## -echo "🎨 Synchronisiere styles/ ..." - +echo "Synchronisiere styles/ nach $ASSET_DST/styles ..." if [ -d "$SRC_ROOT/styles" ]; then - mkdir -p "$DST_ROOT/styles" - + mkdir -p "$ASSET_DST/styles" rsync -av --delete \ --exclude '.DS_Store' \ --exclude '._*' \ - "$SRC_ROOT/styles/" "$DST_ROOT/styles/" + "$SRC_ROOT/styles/" "$ASSET_DST/styles/" else - echo "⚠️ styles/ nicht gefunden – übersprungen." + echo "Hinweis: $SRC_ROOT/styles nicht gefunden, übersprungen." fi -######################################## -# 4. TEMPLATES -######################################## -echo "📄 Synchronisiere templates/ ..." - +echo "Synchronisiere templates/ nach $APP_DST/templates ..." if [ -d "$SRC_ROOT/templates" ]; then - mkdir -p "$DST_ROOT/templates" - + mkdir -p "$APP_DST/templates" rsync -av --delete \ --exclude '.DS_Store' \ --exclude '._*' \ - "$SRC_ROOT/templates/" "$DST_ROOT/templates/" + "$SRC_ROOT/templates/" "$APP_DST/templates/" else - echo "⚠️ templates/ nicht gefunden – übersprungen." + echo "Hinweis: $SRC_ROOT/templates nicht gefunden, übersprungen." fi -######################################## -# 5. HINWEIS FILES -######################################## -echo "📁 files/ wird bewusst NICHT synchronisiert." +echo "files/ wird bewusst nicht angefasst." -######################################## -# 6. OPTIONAL: CONTAINER RESTART -######################################## -echo "🔄 Starte Container neu ... MANUELL zu tun" +echo "Container neu starten ... manuell!" +#ssh "${NAS_USER}@${NAS_HOST}" "docker restart ${CONTAINER_NAME}" -#ssh "${NAS_USER}@${NAS_HOST}" "docker restart ${CONTAINER_NAME}" \ -# && echo "✅ Container erfolgreich neu gestartet" \ -# || echo "⚠️ Container konnte nicht neu gestartet werden" - -######################################## -# DONE -######################################## -echo "🎉 Deployment abgeschlossen." \ No newline at end of file +echo "Deployment abgeschlossen." \ No newline at end of file diff --git a/templates/base.html b/templates/base.html index 6122c90..745483a 100644 --- a/templates/base.html +++ b/templates/base.html @@ -4,302 +4,33 @@ {% block title %}Hebamme Krystyna Kolb{% endblock %} - +
-
+
- +
- + Krystyna Kolb
-
+ -
diff --git a/templates/home.html b/templates/home.html index ada38d2..2108901 100644 --- a/templates/home.html +++ b/templates/home.html @@ -1,5 +1,4 @@ {% extends "base.html" %} - {% block title %}Hebamme Krystyna Kolb{% endblock %} {% block content %} @@ -7,22 +6,22 @@
Mit Herz, Erfahrung und Achtsamkeit

Hebamme Krystyna Kolb

-

- Ein neues Leben ist ein Wunder. - Die jungen Familien achtsam zu begleiten ist meine Berufung. - Ich unterstütze euch mit 25 Jahren Erfahrung – - einfühlsam, individuell und sicher in der Schwangerschaft, - rund um die Geburt und im Wochenbett. +

+ Ein neues Leben ist ein Wunder. Die jungen Familien achtsam zu begleiten ist meine Berufung. + Ich unterstütze euch mit 25 Jahren Erfahrung – einfühlsam, individuell und sicher in der + Schwangerschaft, bei der Geburt und im Wochenbett. +

+

+ Betreuungen sind von Wien bis zum Neusiedlersee möglich.

-
+

Begleitung in einer besonderen Zeit

- Jede Schwangerschaft ist einzigartig. In dieser sensiblen und wertvollen Lebensphase - ist es mir wichtig, euch mit Ruhe, Fachwissen und persönlicher Zuwendung zur Seite zu stehen. - Gemeinsam schaffen wir Vertrauen, Orientierung und einen geschützten Raum für eure Fragen, - Wünsche und Bedürfnisse. + Schwangerschaft, Geburt und die erste Zeit mit eurem Baby sind besonders wertvolle Lebensphasen. + Ich begleite euch mit Ruhe, Erfahrung und einem offenen Ohr für eure Fragen, Sorgen und Wünsche. + Dabei ist mir wichtig, dass ihr euch sicher, verstanden und gut aufgehoben fühlt.

@@ -30,81 +29,71 @@

Meine Leistungen

- Ich begleite euch mit fachlicher Kompetenz und viel Feingefühl durch die verschiedenen Phasen - von Schwangerschaft, Geburt und der ersten Zeit mit eurem Baby. Die folgenden Leistungen - können individuell auf eure persönliche Situation abgestimmt werden. + Jede Familie ist anders – deshalb darf auch Begleitung individuell sein. Meine Leistungen unterstützen + euch fachlich und menschlich durch die Schwangerschaft, rund um die Geburt und in der ersten Zeit + mit eurem Kind.

-
+
Mutter-Kind-Pass-Beratung
- In der Zeit zwischen der 18. und 22. Schwangerschaftswoche biete ich euch eine - umfassende Beratung im Rahmen des Mutter-Kind-Passes an. Dabei geht es um Fragen - rund um die Entwicklung eures Babys, euer körperliches und seelisches Wohlbefinden - sowie um wertvolle Informationen für eine bewusste und gut vorbereitete Schwangerschaft. + Zwischen der 18. und 22. Schwangerschaftswoche biete ich euch eine ausführliche Beratung + im Rahmen des Mutter-Kind-Passes an. Dabei besprechen wir die Entwicklung eures Babys, + eure körperlichen Veränderungen, euer Wohlbefinden und viele praktische Fragen rund um + diese besondere Zeit.
Akupunktur
- Mit punktgenauer Aktivierung ausgewählter Punkte aus der chinesischen Medizin kann - Akupunktur den Körper sanft unterstützen. Sie wird in der Schwangerschaft häufig als - wohltuende Begleitung eingesetzt und kann individuell auf eure Bedürfnisse abgestimmt werden. + Akupunktur kann in der Schwangerschaft und rund um die Geburt eine sanfte Unterstützung sein. + Durch die gezielte Aktivierung ausgewählter Punkte aus der chinesischen Medizin lassen sich + Körper und Wohlbefinden individuell begleiten.
Geburtsvorbereitungskurs
- Eine gute Vorbereitung schenkt Vertrauen. Im Geburtsvorbereitungskurs erhaltet ihr - hilfreiches Wissen über die Geburt, Atem- und Entspannungstechniken, den Umgang mit - Wehen sowie die ersten Tage mit eurem Baby. Ziel ist es, euch Sicherheit zu geben und - euch gestärkt auf die Geburt einzustimmen. + Eine gute Vorbereitung schenkt Vertrauen. Im Geburtsvorbereitungskurs geht es um Wissen, + Entspannung, Atemtechniken, den Ablauf der Geburt und die ersten Tage mit eurem Baby. + So könnt ihr euch innerlich gestärkt und gut vorbereitet auf die Geburt einstimmen.
Wochenbettbetreuung
- Die erste Zeit nach der Geburt ist intensiv, berührend und oft auch herausfordernd. - In der Wochenbettbetreuung begleite ich euch zuhause mit Ruhe und Erfahrung. Ich unterstütze - bei Fragen zur Rückbildung, zur Versorgung eures Babys, zum Stillen und zu allem, - was euch in dieser neuen Lebensphase bewegt. + Das Wochenbett ist eine intensive, berührende und oft auch herausfordernde Zeit. Ich begleite + euch zuhause mit Erfahrung und Ruhe, unterstütze bei Fragen zur Rückbildung, zur Versorgung + eures Babys und zu allem, was euch als Familie bewegt.
Still- und Laktationsberatung
- Stillen ist etwas sehr Natürliches und gleichzeitig nicht immer selbstverständlich. - Mit einfühlsamer und fachkundiger Still- und Laktationsberatung helfe ich euch dabei, - einen guten Start zu finden, Unsicherheiten zu klären und individuelle Lösungen zu entwickeln, - damit ihr euch sicher und gut begleitet fühlt. + Stillen darf wachsen. Mit fachkundiger und einfühlsamer Beratung unterstütze ich euch bei + einem guten Start, bei Unsicherheiten und bei individuellen Herausforderungen, damit ihr euren + eigenen sicheren Weg finden könnt.
Homöopathie
- Die Homöopathie kann als sanfte, ergänzende Begleitung in besonderen Lebensphasen - eingesetzt werden. Mit großer Sorgfalt und auf eure persönliche Situation abgestimmt - beziehe ich diese Möglichkeit auf Wunsch in meine Betreuung mit ein. + Homöopathie kann auf Wunsch als sanfte ergänzende Begleitung eingesetzt werden. Dabei steht + immer die individuelle Situation von Mutter und Kind im Mittelpunkt.
Fremdsprachliche Betreuung
- Eine vertrauensvolle Begleitung beginnt mit gutem Verstehen. Ich biete Betreuung in - mehreren Sprachen an, damit ihr euch in Gesprächen sicher, verstanden und aufgehoben fühlt. -
    -
  • Deutsch
  • -
  • Polnisch
  • -
  • Russisch
  • -
  • Englisch
  • -
+ Eine vertrauensvolle Begleitung lebt vom Verstehen. Ich betreue euch gerne mehrsprachig in: + Deutsch, Polnisch, Russisch und Englisch.
diff --git a/templates/impressum.html b/templates/impressum.html index 21fb8d3..4c918f1 100644 --- a/templates/impressum.html +++ b/templates/impressum.html @@ -1,13 +1,48 @@ {% extends "base.html" %} - {% block title %}Impressum | Hebamme Krystyna Kolb{% endblock %} {% block content %} -
+
+ +

Rechtliche Hinweise

+

+ Diese Website dient der Information über die Leistungen von Hebamme Krystyna Kolb. + Alle Inhalte wurden mit größtmöglicher Sorgfalt erstellt. Eine Haftung für die + Richtigkeit, Vollständigkeit und Aktualität der Inhalte kann jedoch nicht übernommen werden. +

+ +

+ Inhalte, Texte, Bilder und Grafiken dieser Website sind urheberrechtlich geschützt. + Jede Verwendung außerhalb der gesetzlichen Grenzen bedarf der vorherigen Zustimmung. +

+ +

Datenschutz

+

+ Informationen zur Verarbeitung personenbezogener Daten finden Sie in der + Datenschutzerklärung. +

+ +

Online-Streitbeilegung

+

+ Verbraucher haben die Möglichkeit, Beschwerden an die Online-Streitbeilegungsplattform + der EU zu richten. +

+ +

Hinweis zur Verbraucherstreitbeilegung

+

+ Es besteht keine Verpflichtung zur Teilnahme an einem Streitbeilegungsverfahren vor + einer Verbraucherschlichtungsstelle. +

+
{% endblock %} \ No newline at end of file diff --git a/templates/kontakt.html b/templates/kontakt.html index d683b5c..329d483 100644 --- a/templates/kontakt.html +++ b/templates/kontakt.html @@ -1,13 +1,21 @@ {% extends "base.html" %} - {% block title %}Kontakt | Hebamme Krystyna Kolb{% endblock %} {% block content %} -
+
-{% endblock %} \ No newline at end of file + +{% endblock %} diff --git a/templates/styles/styles.css b/templates/styles/styles.css new file mode 100644 index 0000000..b4bb233 --- /dev/null +++ b/templates/styles/styles.css @@ -0,0 +1,260 @@ +@import url('https://fonts.googleapis.com/css2?family=Handlee&family=Quicksand:wght@400;500;700&display=swap'); + +:root { + --rosa-1: #f8dbe7; + --rosa-2: #fbeaf1; + --blau-1: #e7f2ff; + --blau-2: #d8ebff; + --text: #4b4650; + --accent-rosa: #bf6f8c; + --accent-blau: #6f8eae; + --card: rgba(255, 255, 255, 0.82); + --card-strong: rgba(255, 255, 255, 0.9); + --shadow: 0 12px 30px rgba(86, 110, 140, 0.16); + --radius: 24px; +} + +* { + box-sizing: border-box; +} + +body { + margin: 0; + color: var(--text); + font-family: "Quicksand", Arial, sans-serif; + background: linear-gradient(135deg, var(--rosa-1) 0%, var(--rosa-2) 35%, var(--blau-1) 70%, var(--blau-2) 100%); + min-height: 100vh; +} + +h1, h2, h3, .handwritten, .hero-motto { + font-family: "Handlee", cursive; + font-weight: 400; +} + +.page-wrap { + max-width: 1180px; + margin: 0 auto; + padding: 28px 20px 40px; +} + +.topbar { + display: flex; + justify-content: space-between; + align-items: flex-start; + gap: 24px; + margin-bottom: 20px; +} + +.logo-box, +.photo-box, +.main-nav, +.hero-card, +.info-card, +details, +.legal-card { + background: var(--card); + box-shadow: var(--shadow); + border-radius: var(--radius); + backdrop-filter: blur(6px); +} + +.logo-box, +.photo-box { + padding: 14px; +} + +.logo { + display: block; + height: 92px; + width: auto; + object-fit: contain; +} + +.profile { + display: block; + width: 200px; + max-width: 100%; + height: auto; + border-radius: 22px; + object-fit: cover; + box-shadow: 0 12px 28px rgba(0,0,0,0.14); +} + +.main-nav { + padding: 14px 18px; + margin-bottom: 28px; +} + +.main-nav a { + text-decoration: none; + color: var(--accent-blau); + font-weight: 700; + margin-right: 18px; + font-size: 1rem; +} + +.main-nav a:hover { + color: var(--accent-rosa); +} + +.hero { + display: grid; + grid-template-columns: 1.2fr 0.8fr; + gap: 26px; + align-items: center; + margin-bottom: 34px; +} + +.hero-card, +.info-card, +.legal-card { + padding: 30px; +} + +.eyebrow { + display: inline-block; + margin-bottom: 14px; + padding: 8px 14px; + border-radius: 999px; + background: rgba(255,255,255,0.65); + color: var(--accent-rosa); + font-weight: 700; + font-size: 0.95rem; +} + +h1 { + font-size: clamp(2.2rem, 4vw, 3.8rem); + color: #6f5f6b; + line-height: 1.08; + margin: 0 0 18px; +} + +h2 { + font-size: 2rem; + color: #6f5f6b; + margin-top: 0; +} + +.hero-motto { + font-size: 1.45rem; + line-height: 1.65; + margin: 0; + color: #735f6c; +} + +.lead, +.info-card p, +.legal-card p, +.legal-card li { + font-size: 1.06rem; + line-height: 1.75; +} + +.note-region { + margin-top: 18px; + font-weight: 700; + color: var(--accent-blau); +} + +.section-title { + margin: 10px 0 14px; +} + +.section-subtitle { + max-width: 820px; + line-height: 1.75; + margin: 0 0 24px; +} + +.services-grid { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 18px; +} + +details { + overflow: hidden; +} + +summary { + list-style: none; + cursor: pointer; + padding: 20px 22px; + font-weight: 700; + color: var(--accent-blau); + display: flex; + justify-content: space-between; + align-items: center; +} + +summary::-webkit-details-marker { + display: none; +} + +summary::after { + content: "+"; + font-size: 1.5rem; + color: var(--accent-rosa); +} + +details[open] summary::after { + content: "–"; +} + +.detail-content { + padding: 0 22px 22px; + line-height: 1.75; +} + +.contact-block { + font-size: 1.08rem; + line-height: 1.9; +} + +.contact-block a { + color: var(--accent-blau); + text-decoration: none; + font-weight: 700; +} + +.legal-card h3 { + margin-top: 28px; + margin-bottom: 10px; + font-size: 1.55rem; + color: var(--accent-blau); +} + +.legal-card ul { + padding-left: 20px; + line-height: 1.8; +} + +.footer { + text-align: center; + padding-top: 28px; + color: #736b76; +} + +@media (max-width: 900px) { + .hero, + .services-grid { + grid-template-columns: 1fr; + } +} + +@media (max-width: 640px) { + .topbar { + flex-direction: column; + } + + .profile { + width: 100%; + max-width: 260px; + } + + .hero-card, + .info-card, + .legal-card { + padding: 22px; + } +}