import os OUT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) WP = "https://schmacko-napf.de/wp-content/uploads/" LOGO = WP + "2024/12/Logo-Transparent-Rechnung.png" KK = {n: f"{WP}2025/01/KK-Fotografie-{n}.jpg" for n in (35, 46, 51, 66)} BARF = WP + "2023/06/Barf.png" def U(pid, w=1600): return f"https://images.unsplash.com/photo-{pid}?auto=format&fit=crop&w={w}&q=80" IMG_FOOD = "1714068691210-073dc52c6c1d" IMG_SHOP = "1733451629760-d5fc1c818698" IMG_CAR = "1771777400696-3af9b6470ff8" PHONE, PHONE_HREF = "+49 176 569 329 42", "tel:+4917656932942" MAIL = "info@schmacko-napf.de" WA = "https://wa.me/4917656932942" def ic(d, sw="1.8"): return f'' I = { "arrow": ic('', "2"), "down": ic('', "2"), "menu": ic('', "2"), "phone": ic(''), "mail": ic(''), "chat": ic(''), "bowl": ic(''), "bone": ic(''), "leash": ic(''), "car": ic(''), "shield": ic(''), "wind": ic(''), } ARROW_BADGE = f'{I["arrow"]}' NAV = [("hundeschule.html", "Hundetraining"), ("ernaehrung.html", "Ernährung"), ("shop.html", "Shop"), ("transportboxen.html", "Transportboxen"), ("index.html#kontakt", "Kontakt")] def head(title, desc): return f''' {title} ''' def header(current=None): cur = ' aria-current="page"' links = "\n".join(f' {t}' for h, t in NAV) return f''' ''' def contact(photo=KK[46], alt="Schwarze Schäferhündin steht aufmerksam im Wald"): go = f'{I["arrow"]}' return f''' ''' def footer(): return f''' ''' def page_hero(img, kicker, title, text, alt): return f'''
{alt} {kicker}

{title}

{text}

''' def page(name, title, desc, current, body): write(name, head(title, desc) + "\n" + header(current) + '
\n' + body + footer()) PILLAR_TONES = [(2, ""), (3, ""), (4, ""), (5, ""), (6, "")] def pillars(title, items): rows = "\n".join( f'
  • 0{i + 1}{word}{text}
  • ' for i, ((t, dark), (word, text)) in enumerate(zip(PILLAR_TONES, items))) return f'''
    • Meine Philosophie

      {title}

    • {rows}
    ''' def write(name, html): open(os.path.join(OUT, name), "w").write(html) # ================================================================ Startseite tiles = [ ("hundeschule.html", "Hundeschule", "", KK[66], "Katha mit ihrem Hund auf einer Wiese im Abendlicht", None), ("ernaehrung.html", "Ernährungsberatung", "", U(IMG_FOOD, 1400), "Hund schnuppert an einem Napf mit Trockenfutter", IMG_FOOD), ("shop.html", "Shop", "", U(IMG_SHOP, 1400), "Hund in einem Laden mit Hundezubehör", IMG_SHOP), ("transportboxen.html", "Transportboxen", "Maßanfertigung fürs Auto", U(IMG_CAR, 1400), "Hund sitzt im offenen Kofferraum hinter einem Trenngitter", IMG_CAR), ] tile_html = "" for href, name, sub, src, alt, pid in tiles: small = f"{sub}" if sub else "" srcset = f' srcset="{U(pid,800)} 800w, {U(pid,1400)} 1400w, {U(pid,2000)} 2000w" sizes="(max-width: 767px) 100vw, 50vw"' if pid else "" tile_html += f''' {alt} {name}{small} {I["arrow"]} ''' index = head("Schmacko Napf & Hundetraining by Katha", "Hundetraining, Ernährungs- und Gesundheitsberatung, Shop und maßgefertigte Transportboxen – Schmacko Napf by Katha.") + '\n' + header() + f'''
    Über mich

    Hallo,
    ich bin Katha.

    Hundetrainerin und Ernährungsberaterin – mit Herz und Verstand. Für beide Seiten der Leine.

    § 11 TierSchG zertifiziert Ernährungs- & Gesundheitsberaterin
    Katha sitzt mit ihrer Schäferhündin Elina im Grünen
    Schwarzer Schäferhund rennt freudig über einen Feldweg {ARROW_BADGE} Hundetraining

    Entspannt durch
    den Alltag.

    Einzeltraining, Hausbesuch und Außentraining in der Gruppe.

    Einzeltraining 60 € / Std. Gruppe 18 € 10er-Karte 165 €

    „Futter ist mehr als nur Nahrung – es ist Fürsorge in Napfform.“

    — Katha
    {pillars('Die 5 Säulen für Mensch und Hund.', [('Respekt', 'Den Hund als eigenständiges Wesen ernst nehmen.'), ('Ehrlichkeit', 'Klare Signale schaffen Vertrauen.'), ('Geduld', 'Jeder Hund lernt in seinem Tempo.'), ('Konsequenz', 'Klare Regeln – fair und ohne Druck.'), ('Verständnis', 'Bedürfnisse und Gefühle verstehen.')])} {contact()}''' + footer().replace("
    \n", "
    \n", 1) write("index.html", index) # ================================================================ Hundetraining page("hundeschule.html", "Hundetraining – Schmacko Napf", "Einzeltraining, Hausbesuche und Gruppentraining im Außenbereich mit Katha, zertifizierte Hundetrainerin nach § 11 TierSchG.", "hundeschule.html", page_hero(KK[66], "Hundetraining", "Für beide Seiten
    der Leine.", "Vertrauen, klare Kommunikation und Training, das im Alltag funktioniert.", "Katha mit ihrem Hund auf einer Wiese im Abendlicht") + f'''
    Einzeltraining & Hausbesuch

    Individuell.
    Bei dir zu Hause.

    Für Grundgehorsam, Unsicherheit, Leinenführigkeit oder einen neuen Hund im Haus.

    60 €pro Stunde · nach dem Erstgespräch (120 €, ca. 2 Std.)
    Schwarze Schäferhündin steht aufmerksam im Wald
    Schwarzer Schäferhund rennt über einen Feldweg
    Gruppe & Außentraining

    Training da, wo
    das Leben ist.

    In der Stadt, im Grünen, in Geschäften – mit max. 6 Mensch-Hund-Teams.

    18 €pro Mensch-Hund-Team
    {pillars('Die 5 Säulen.', [('Respekt', 'Hunde wollen ernst genommen werden.'), ('Ehrlichkeit', 'Hunde lesen unsere Körpersprache sofort.'), ('Geduld', 'Lernen braucht Zeit und Wiederholung.'), ('Konsequenz', 'Klare Regeln, ganz ohne Gewalt.'), ('Verständnis', 'Realistische Erwartungen an jeden Hund.')])}
    Preise

    Fair und klar.

    Erstgespräch Einzeltrainingca. 2 Stunden · zzgl. 0,30 € / km120 €
    Einzeltrainingpro Stunde · zzgl. 0,30 € / km60 €
    Gruppentrainingpro Mensch-Hund-Team18 €
    10er-KarteGruppe & Einzel frei kombinierbar165 €
    {contact(KK[35], "Katha sitzt mit ihrer Schäferhündin im Grünen")}''') # ================================================================ Ernährung page("ernaehrung.html", "Ernährungsberatung – Schmacko Napf", "Individuelle Futterpläne und Gesundheitsberatung für Hunde jeden Alters – BARF, Koch-BARF, Nass- und Trockenfutter.", "ernaehrung.html", page_hero(U(IMG_FOOD, 2000), "Ernährungs- & Gesundheitsberatung", "Fürsorge
    in Napfform.", "Individuelle Futterpläne – gesund, sensibel oder mit Diagnose.", "Hund schnuppert an einem Napf mit Trockenfutter") + f'''
    Kennst du das?

    Jeder sagt
    etwas anderes.

    Ich bringe Klarheit in die Futter-Frage – und erstelle einen Plan, der zu deinem Hund passt.

    BARFTeil-BARFKoch-BARFNassfutterTrockenfutter
    Teller mit frischem Fleisch, Gemüse und Obst
    Ablauf

    So starten wir.

    1. 01ErstgesprächVor Ort, am Telefon oder online.
    2. 02FutterplanGenau auf deinen Hund abgestimmt.
    3. 03Fragen klärenNach 3 Tagen gehen wir alles durch.
    4. 04NachbesprechungNach 4 Wochen schauen wir gemeinsam drauf.
    Rationsprüfung

    Passt das
    Futter?

    kostenlos
    Erstgespräch

    Kennen­lernen

    ab 45 €ca. 60 Minuten
    Futterplan

    Dein
    Plan

    ab 75 €inkl. Folgegespräch nach 4 Wochen
    {contact()}''') # ================================================================ Shop page("shop.html", "Shop – Schmacko Napf", "Ausgewähltes Futter, Snacks und Zubehör für deinen Hund.", "shop.html", page_hero(U(IMG_SHOP, 2000), "Shop", "Ausgewählt
    mit Herz.", "Futter, Snacks und Zubehör, hinter denen ich stehe.", "Hund in einem Laden mit Hundezubehör") + f'''
    {I["bowl"]}

    Futter

    Passend zu deinem Futterplan.

    {I["bone"]}

    Snacks

    Natürlich – fürs Training und zum Belohnen.

    {I["leash"]}

    Zubehör

    Robust und durchdacht für den Alltag.

    Der Online-Shop ist bald da.
    Bis dahin: schreib mir einfach.

    {contact()}''') # ================================================================ Transportboxen page("transportboxen.html", "Transportboxen nach Maß – Schmacko Napf", "Maßgefertigte Hunde-Transportboxen fürs Auto – passgenau für Fahrzeug und Hund.", "transportboxen.html", page_hero(U(IMG_CAR, 2000), "Maßanfertigung", "Transportboxen
    fürs Auto.", "Passgenau für dein Fahrzeug und deinen Hund.", "Hund sitzt im offenen Kofferraum hinter einem Trenngitter") + f'''
    {I["car"]}

    Passgenau

    Exakt für deinen Kofferraum gebaut.

    {I["shield"]}

    Sicher

    Stabil – für jede Fahrt.

    {I["wind"]}

    Bequem

    Luftig und mit genug Platz.

    Ablauf

    In 4 Schritten zur eigenen Box.

    1. 01BeratungAuto, Hund und Wünsche.
    2. 02AusmessenKofferraum und Hund genau vermessen.
    3. 03FertigungDeine Box entsteht nach Maß.
    4. 04ÜbergabeEinbau – und los geht’s.
    {contact()}''') # ================================================================ Impressum page("impressum.html", "Impressum – Schmacko Napf", "Impressum von Schmacko Napf & Hundetraining by Katha.", None, f'''
    Rechtliches

    Impressum

    ''') print("ok")