tripbier entstand, um ein einfaches Problem zu lösen.
Eine Craft-Brauerei zu entdecken erfordert noch immer dutzende isolierte Suchen, verstreute Bewertungen und veraltete Informationen.
Unsere Mission ist es, das weltweite Brauwissen auf einer einzigen offenen, durchsuchbaren und KI-gestützten Plattform zu bündeln.
Wir wollen nicht nur Brauereien auflisten.
Wir wollen Menschen, Regionen, Geschichten, Stile, Auszeichnungen und Erlebnisse miteinander verbinden.
Vom ersten Bier in Gramado bis zu einer preisgekrönten Brauerei in Portland soll die Reise nahtlos sein.
Tripbier ist eine globale Plattform zur Entdeckung von Craft-Brauereien, Bierrouten, Bier-Tourismus und geografischer Intelligenz, die künstliche Intelligenz einsetzt, um Reisende, Brauereien und Reiseziele in 16 Ländern zu verbinden.
system-
handbuch
Vollständiger Leitfaden zu tripbier — Plattform für Bierrouten, aufgebaut auf Cloudflare Workers, D1, KV und R2. Jeder Abschnitt enthält direkte Links zur beschriebenen Funktion.
was ist tripbier
überblicktripbier ist eine serverlose Plattform zur Entdeckung und Routenplanung von Craft-Brauereien. Sie kombiniert eine georeferenzierte Datenbank mit generativer KI, um personalisierte Erlebnisse zu schaffen — von der interaktiven Karte bis zur Reiseroute, erzählt von einem Bier-Concierge.
Die gesamte Infrastruktur läuft auf Cloudflare (Workers + D1 + KV + R2), ohne eigene Server, mit globaler Edge-Latenz und nutzungsabhängigen Kosten. Das Datenmodell basiert auf SQLite über D1, verteilt auf mehrere Datenbanken nach Kontinenten.
Das System besteht aus 6 unabhängigen Workers, jeder mit spezifischer Verantwortung, die über interne Fetch-Aufrufe kommunizieren oder über KV Zustand teilen.
systemkennzahlen
metriken · jun 2026| kennzahl | wert | hinweis |
|---|---|---|
| Erfasste Brauereien (gesamt) | 19.905 | Brasilien + 15 internationale Länder · tripbeer-map |
| Brauereien BR (tripbeer-db) | 5.448 | aktiv und in Betrieb |
| Brauereien US (OpenBreweryDB) | 8.353 | via Pipeline importiert |
| Länder mit Abdeckung | 16 | BR, US, DE, BE, CZ, AT, UK, IE, FR, ES, IT, PT, NL, NO, SE, AR |
| Städte mit redaktionellen Seiten | 130+ | 63 international + 67+ BR |
| Landing Pages von Brauereien | preisgekrönt | CBC, WBC, WBA — dynamisch generiert |
| Besucher / Tag | 625 | Kennzahl jun/2026, organisches Wachstum |
| Anfragen / Monat | ~40k | US + NL + BR als Hauptherkunft |
| Unterstützte Sprachen | 15 | pt-BR, en, es, de, fr, it, nl, no, sv, ja und mehr |
| Tabellen in der D1-Hauptdatenbank | 40+ | tripbeer-db (main) + tripbeer-map (geo) |
| Durchschnittliche Google-Position | 6.9 | "best craft beers near me" — 131 Impressionen/Tag |
infrastruktur
cloudflare stack| worker | domäne | verantwortung |
|---|---|---|
utt-engine | tripbier.com/* · *.tripbier.com/* | Haupt-Router — liefert KV-Seiten, öffentliche API, Subdomänen, LGPD-Banner |
utt-agentlink | /api/chat (intern) | Maestro-Pipeline — 6 Mini-Agenten zur Routengenerierung via GPT-4o-mini |
utt-brewhub | brewhub.html | Chat-Widget pro Brauerei, spezialisierter KI-Agent pro Slug, Schutz von /api/palpite |
utt-analytics | /api/collect (intern) | 1st-Party RUM — erfasst Verweildauer, Wiederkehr, Funnel; täglicher Aggregations-Cron |
utt-beerfeed | /api/news | Radar für Bier-Nachrichten nach Stadt — Cron montags |
utt-static | statische Assets | liefert CSS, JS, Bilder via ASSETS-Binding |
| datenbank | id | hauptinhalt |
|---|---|---|
tripbeer-db | haupt | BR-Brauereien, Nutzer, Routen, Reisepässe, Auszeichnungen, Stile, Öffnungszeiten, Social, Analytics |
tripbeer-map | geo | globale Brauereien mit lat/lon/slug für Kartensuche |
DB_AMERICAS | kontinent | US, CA, AR, CL, MX — Karten-Fallback |
DB_EUROPE | kontinent | DE, BE, CZ, FR, ES, IT, PT, UK, NL, NO, SE… |
utt-analytics | id: 170900e5 | RUM-Ereignisse, Sitzungen, Verweildauer, Journey-Funnel |
| namespace | id | verwendung |
|---|---|---|
UTT_CACHE | 4b5519d0… | HTML-Seiten (page:{name}.html), Sitzungen (sess:{id}), Geo-Indizes (idx:{stadt}:{land}), Statistiken |
KV-Schlüsselmuster: page:home.html · page:agm.html · page:copa.html · idx:porto+alegre:br:uuid · sess:abc123 · stats:total_cervejarias
Bucket: tripbeer-assets · Öffentliches CDN: pub-b8f8998895a64e77a4fa43f286aa08dd.r2.dev/
Speichert Brauerei-Logos, Hero-Bilder (AVIF/WebP/PNG), og:images für WhatsApp (JPEG 1200×630 <300KB) und Partner-Kampagnen-Assets.
hauptseiten
seitenübersichtradar / interaktive karte
funktionDer Radar (tripbier.com/mapa.html) ist das Herzstück der Plattform — eine Leaflet-Karte mit 19.900+ Pins von Brauereien in 16 Ländern, mit MarkerCluster für Performance und Echtzeit-Filtern.
Beim Öffnen nutzt die Karte die Browser-Geolokalisierung oder die IP (Cloudflare cf.city), um sich automatisch zu zentrieren. Jeder Pin öffnet eine Karte mit Bewertung, Adresse, Link zu Instagram/Website und einem Button "Route in Google Maps anzeigen". Preisgekrönte Brauereien erhalten eine besondere Markierung.
Von der Karte akzeptierte URL-Parameter:
| parameter | beispiel | wirkung |
|---|---|---|
?lat=&lng=&zoom= | ?lat=-30.03&lng=-51.21&zoom=11 | zentriert auf bestimmte Koordinaten (von Subdomänen wie AGM genutzt) |
?cidade=&uf= | ?cidade=Gramado&uf=RS | sucht und zentriert auf die angegebene Stadt |
?roteiro= | ?roteiro=variedade-curitiba-3d | lädt und hebt Brauereien einer gespeicherten Route hervor |
?proximas=1 | ?proximas=1 | erzwingt Suche nach den nächstgelegenen Brauereien des Nutzers |
ki-concierge
maestro-pipelineDer tripbier-Concierge ist eine Pipeline aus 6 Mini-Agenten, die eine Textnachricht in eine personalisierte Bierroute verwandelt. Jeder Agent empfängt einen Daten-Umschlag, reichert ihn an und gibt ihn an den nächsten weiter.
Der Concierge ist multi-funktional by Design — kein Chatbot mit Auswahlmenü. Der Nutzer schreibt in natürlicher Sprache und das System erkennt die Absicht automatisch, ohne nach einem Modus zu fragen:
| der nutzer sagt | erkannte absicht | was passiert |
|---|---|---|
| "Gibt es IPA in Gramado?" | suche | listet Brauereien mit IPA auf der Karte, mit direktem Link |
| "Erkläre mir, was ein Weizen ist" | gespräch | Sommelier antwortet über Stil, Geschichte und Speiseempfehlung |
| "Ich möchte 3 Tage in Curitiba verbringen" | route generieren | vollständige Pipeline: Wetter → Kurator → personalisierte Erzählung |
| "Wo ist die Dado Bier?" | navigieren | öffnet die Karte mit dem Pin der Brauerei |
| "poa, wochenende, craft" | route generieren | normalisiert Abkürzung → extrahiert Absicht → generiert Wochenend-Route in POA |
Der Validator erkennt die 4 Modi ohne einen einzigen LLM-Aufruf — reine JavaScript-Logik. Er normalisiert Abkürzungen (poa → Porto Alegre, cwb → Curitiba) vor dem Extraktor. Der Kurator fragt Datenbanken in Kaskade ab: DB Brasil → DB_AMERICAS → DB_EUROPE → DB_ASIA → Serper Discovery als letzter Fallback.
bier-reisepass
gamification · pwaDer tripbier-Reisepass ist eine installierbare PWA (Progressive Web App), mit der Nutzer bei jedem Besuch in Partnerbrauereien Stempel sammeln können. Er ist das Gamification- und Kundenbindungsmotor der Plattform.
Nutzer-Flow: Der Nutzer öffnet passaporte.tripbier.com, installiert es auf dem Smartphone (Startbildschirm), identifiziert sich mit Name und WhatsApp (ohne Registrierung) und erhält Stempel beim Check-in in Brauereien des Kreises.
Verfügbare Kreise: Jede Partner-Route hat einen Kreis mit N Stopps. Das Vervollständigen aller Stopps schaltet eine Vergünstigung in der Partnerbrauerei frei (Zugabe, Rabatt, exklusives Erlebnis). Das Partner-Panel (admin-parceiro) zeigt in Echtzeit, wer abgeschlossen hat, und ermöglicht das Versenden des Preises per WhatsApp.
Stufen: Neugieriger → Lernender → Entdecker → Meister → Sommelier — basierend auf der Gesamtzahl der gesammelten Stempel.
routen
generierung und teilenRouten werden von der Maestro-Pipeline generiert und automatisch im D1 mit einer dauerhaften, eindeutigen URL gespeichert — ohne Anmeldung. Die URL kann per WhatsApp geteilt, per E-Mail verschickt oder als Lesezeichen gespeichert werden.
URL-Format: tripbier.com/roteiros.html?id={slug} — wobei der Slug vom Kurator aus Stadt, Profil und Hash der Auswahl generiert wird (z.B.: variedade-porto-alegre-3d-a1b2).
Jede Route speichert: Liste der Brauereien (id, Name, Kurator-Bewertung), Stadt, gewähltes Profil, Anzahl der Tage, Wetter zum Zeitpunkt der Generierung und die Erzählung des Präsentators.
16 länder
globale abdeckungtripbier hat aktive Abdeckung in 16 Ländern, mit Datenbank, redaktionellen Städten und Concierge-Routing. Jedes Land hat Stadtseiten und Integration in die globale Karte.
Die Länderseiten sind dynamisch — sie existieren nicht als statische Dateien. Sie werden vom Worker in Echtzeit aus D1-Daten generiert: Brauereien, Städte, Auszeichnungen und redaktionelle Inhalte. Das bedeutet, dass das Hinzufügen eines neuen Landes zur Datenbank automatisch alle seine Seiten erstellt, ohne manuellen Veröffentlichungsaufwand. Das ist skalierbare Infrastruktur, getarnt als Inhalt.
stadtseiten
geografisches editorialJede Stadt mit einer kritischen Masse an Brauereien erhält eine kuratierte redaktionelle Seite — nicht automatisch generiert, sondern mit lokaler Identität verfasst. Das Basistemplate ist caxias.html (serifiertes Muster mit Sidebar, Hero, Pull-Quote und Karten-Grid).
Seitenstruktur: Hero mit lokalem Foto → Editorial "Warum besuchen" → Pull-Quote → Brauerei-Grid mit Bewertung/Instagram/Website/Agent → Veranstaltungen → empfohlene Route. Der Neuigkeiten-Abschnitt wird vom utt-beerfeed in Echtzeit gespeist.
Alle internationalen Stadtseiten befinden sich im Unterverzeichnis des Landes: /de/berlim.html, /be/bruges.html, /it/roma.html usw. Wie die Länderseiten werden auch die Stadtseiten dynamisch generiert — der Worker baut das HTML bei jeder Anfrage aus dem D1 auf, ohne vorkompilierte Dateien. Eine neue Stadt mit ausreichend Brauereien in der Datenbank hat sofort ihre Seite verfügbar.
| highlight | link |
|---|---|
| Caxias do Sul (RS) — Referenz-Template | tripbier.com/caxias.html |
| Blumenau (SC) — Hauptstadt des Bundesstaates | tripbier.com/blumenau.html |
| Porto Alegre (RS) — AGM-Zentrum | tripbier.com/porto-alegre.html |
| Gramado (RS) — Tourismus + Craft | tripbier.com/gramado.html |
| Brügge (Belgien) — Weltweite Referenz | tripbier.com/be/bruges.html |
| Berlin (Deutschland) | tripbier.com/de/berlin.html |
| Prag (Tschechische Republik) | tripbier.com/cz/praga.html |
brauerei-landing-pages
virtual landingPreisgekrönte Brauereien (CBC, WBC oder WBA) erhalten automatisch eine dynamische Landing Page, die aus D1-Daten generiert wird — ohne manuelle Eingriffe. Der Zugriff erfolgt über eine Subdomäne: slug.tripbier.com.
Angezeigte Inhalte: Name, Stadt/Bundesland, Google-Bewertung und -Stimmen, Öffnungszeiten nach Wochentag, produzierte Biere (Name, Stil, ABV, IBU), Auszeichnungen mit Medaille und Jahr, verwandte Blog-Posts, eingebettete Karte, Buttons für Instagram/Website/WhatsApp und Chat mit einem auf die Brauerei spezialisierten KI-Agenten.
Zugriffsregel: Hat die Brauerei eine Auszeichnung → vollständige Landing Page rendern. Hat sie keine Auszeichnung, aber ein Instagram oder eine Website → Weiterleitung (302) zum sozialen Netzwerk. Hat sie nichts → 404.
Cache: Jede Landing Page wird im Cloudflare Edge-Cache für 1 Stunde gespeichert (stale-while-revalidate=86400) — null CPU bei Wiederholungsbesuchen.
wettbewerbe und auszeichnungen
preisträgertripbier indexiert die Medaillen der wichtigsten Craft-Bier-Wettbewerbe und zeigt sie auf den Landing Pages der Brauereien und auf der Auszeichnungsseite an. Die Medaillen sind ein Ranking-Kriterium im Kurator.
| wettbewerb | kürzel | umfang | medaillen |
|---|---|---|---|
| Campeonato Brasileiro de Cerveja | CBC | National — Blumenau/SC | Gran Champion, Gold, Silber, Bronze |
| World Beer Cup | WBC | International — USA | Gold, Silver, Bronze |
| World Beer Awards | WBA | International — UK | Country Winner, Gold, Silver |
| Concurso Gaúcho de Cerveja (AGM) | CGCBA | RS — organisiert von AGM | Gold, Silber, Bronze |
| Mondial de la Bière | MDB | Brasilien + International | Médaille d'Or, d'Argent, de Bronze |
partner-panel
admin · brauereienDas Partner-Panel ist die Verwaltungsoberfläche für Brauereibesitzer. Zugang über den Brauerei-Slug (ohne Anmeldung — Auth per Token via URL, noch zu implementieren). Direkte URL: tripbier.com/admin-parceiro?slug={slug}.
| tab | was verwaltet wird | D1-tabelle |
|---|---|---|
| 🗺️ routen | Teilnehmer der Reisepass-Kreise: Fortschritt, Check-ins, Button "belohnen" via WhatsApp | passaporte_carimbos · passaportes |
| 🍺 biere | Bierkatalog: Name, Stil, ABV, IBU, Beschreibung, Foto (URL) | estilos_cervejaria |
| 📋 speisekarte | Speisekarten-Einträge: Kategorie, Name, Preis, Beschreibung, Foto — sichtbar auf der Landing Page | lp_cardapio |
| 🎯 aktionen | Kampagnen: Titel, Typ, Rabatt %, Gültigkeit, Aktiv/Inaktiv-Toggle | lp_campanhas |
| 🕐 öffnungszeiten | Wochenraster Montag→Sonntag: öffnet, schließt, geschlossen, Anmerkung | horarios |
agm — associação gaúcha de microcervejarias
subdomäne · partnerschaftagm.tripbier.com ist eine dedizierte Subdomäne für die tripbier × AGM-Partnerschaft — eine redaktionelle Pitch-Page mit den 19 angeschlossenen Brauereien auf der Karte, der Geschichte der gaúcho Craft-Bewegung und einem CTA zur Mitgliedschaft.
Historischer Inhalt basierend auf verifizierter akademischer Forschung: Cruz, R.C. (2016). Consumo e Formação de Mercado: um estudo sobre as microcervejarias de Porto Alegre. Dissertação UNISINOS.
Chronologie: Dado Bier (1995, erste Mikrobrauerei BR) → WE Consultoria (1997) → Acerva Gaúcha (2003) → AGM gegründet von Jorge Gitzler → ICMS-Senkung in RS → Polo Anchieta (2010) → 50+ Mitglieder heute.
claim your brewery
b2b-akquiseBrauereien ohne vollständiges Profil zeigen einen CTA "Gehört Ihnen diese Brauerei?" auf der Landing Page und im Chat-Widget. Beim Klicken füllt der Inhaber ein einfaches Formular aus (Name, E-Mail, Position, WhatsApp), das einen Lead im D1 (reivindicacoes) erstellt und eine interne Benachrichtigung auslöst.
Dies ist der Einstiegsfunnel für das B2B-Modell: Starter (R$89/Monat) → Professional (R$149/Monat) → Premium (R$297/Monat), mit zunehmendem Funktionsumfang im Partner-Panel und mehr Sichtbarkeit auf der Karte.
api-endpunkte
technische referenz| methode | endpunkt | beschreibung |
|---|---|---|
| GET | /api/proximas | sucht Brauereien nach Koordinaten, Stadt oder Text — Haupt-Engine der Karte und des Concierge |
| GET | /api/suggest?q=&pais= | Stadtautovervollständigung (search-as-you-type, KV) |
| GET | /api/stats | Gesamtzahl aktiver Brauereien |
| GET | /api/ping | Analytics: registriert enter/leave/click mit Geo und Gerät |
| POST | /api/chat | sendet Nachricht an Maestro-Pipeline und empfängt Concierge-Antwort |
| GET | /api/news?cidade=&limit= | Bier-Nachrichten nach Stadt (utt-beerfeed) |
| POST | /api/news/collect | erzwingt manuelles Sammeln von Nachrichten (normalerweise Cron montags) |
| GET | /api/estilos?q= | sucht Biere nach Stil mit Foto — speist Stil-Grid |
| GET | /api/parceiro/perfil?slug= | gibt vollständige Brauerei-Daten zurück: Biere, Speisekarte, Aktionen, Öffnungszeiten |
| POST | /api/parceiro/cerveja | erstellt oder aktualisiert Bier im Brauerei-Katalog |
| DELETE | /api/parceiro/cerveja/:id | entfernt Bier aus dem Katalog |
| POST | /api/parceiro/cardapio | erstellt oder aktualisiert Speisekarten-Eintrag |
| DELETE | /api/parceiro/cardapio/:id | deaktiviert Speisekarten-Eintrag (soft delete) |
| POST | /api/parceiro/campanha | erstellt oder aktualisiert Aktion/Kampagne |
| PUT | /api/parceiro/campanha/:id/toggle | aktiviert oder deaktiviert Kampagne |
| DELETE | /api/parceiro/campanha/:id | löscht Kampagne dauerhaft |
| POST | /api/parceiro/horario | speichert Öffnungszeiten-Raster (upsert nach Wochentag) |
| POST | /api/checkin | registriert Check-in im Reisepass (Stempel) |
| GET | /api/meu-passaporte | gibt Reisepass des Nutzers zurück (per Session) |
| POST | /api/roteiro-salvar | speichert vom Maestro generierte Route im D1 |
| GET | /api/admin/painel?roteiro= | Kreis-Daten für das Partner-Panel (Teilnehmer, Fortschritt) |
| GET | /sitemap.xml | dynamische Sitemap mit allen Brauereien + Hauptseiten |
analytics
rum 1st-partytripbier verwendet 1st-Party-Analytics — kein Google Analytics, keine Drittanbieter-Cookies. Der Tracker (/a/tracker.js) wird auf allen Seiten geladen und sendet Ereignisse an /collect im utt-analytics.
Gesammelte Daten: besuchte Seiten, Verweildauer (dwell), Sitzungswiederholung, Konversionsfunnel (Startseite → Karte → Route → Reisepass), Land/Stadt (CF-Header), Gerätetyp. Keine personenbezogenen Daten — Kennung ist SHA1-Hash von IP+UA.
Täglicher Cron: utt-analytics aggregiert Rohereignisse und schreibt tägliche Zusammenfassungen ins D1 (id: 170900e5) — eindeutige Besucher, Seitenaufrufe, Top-5-Länder, Bandbreite. Das Analytics-Dashboard liest aus diesen Zusammenfassungen.
Verfolgte Klicks: Instagram, Website, WhatsApp — pro Brauerei, pro geografischer Herkunft, pro Gerät.
datenschutz
privatsphäre · complianceDas Cookie-Banner wird vom Worker via Middleware auf allen Seiten eingeblendet — keine Seite muss das Skript manuell einbinden. Die Einwilligung wird für 365 Tage im localStorage gespeichert.
deployment und betrieb
infrastruktur · wranglerDas gesamte Deployment erfolgt mit der Wrangler CLI aus dem Verzeichnis G:\Site\tripbier\utt-engine\PRD\js\. Die Konfiguration liegt in wrangler.toml. API-Zugangsdaten (OpenAI, Serper, Google Places) liegen in G:\Site\tripbier\upg-engine\pipeline\.env.
# Deploy des Haupt-Workers npx wrangler deploy --config wrangler.toml # Seite im KV veröffentlichen (HTML → page:name.html) npx wrangler kv key put "page:agm.html" \ --path ../html/agm.html \ --remote --binding UTT_CACHE --config wrangler.toml # Bild in R2 hochladen npx wrangler r2 object put "tripbeer-assets/agm/foto.png" \ --file ./foto.png --remote --config wrangler.toml # D1-Abfrage npx wrangler d1 execute tripbeer-db \ --command "SELECT COUNT(*) FROM cervejarias" \ --remote --json --config wrangler.toml
Goldene Regel: Einen Worker oder HTML zu ändern, ohne vorher aufzulisten, was sich ändert und wen es betrifft, kann zu stillen Regressionen führen. Der korrekte Prozess: (1) Änderungen und Auswirkungen auflisten, (2) mit Marcos bestätigen, (3) veröffentlichen.
Achtung: Tripbier und ClubTour sind getrennte Konten/Geschäfte — Workers, Daten oder Zugangsdaten zwischen beiden niemals vermischen.
soziale ebene
gemeinschaftDie soziale Ebene ermöglicht es Reisepass-Nutzern, miteinander zu interagieren: Routen zu teilen, Brauereien zu kommentieren, anderen Reisenden zu folgen und einen Besuchsverlauf aufzubauen, der im öffentlichen Profil sichtbar ist.
Identität basiert auf Telefon + Name (ohne Passwort). Avatar wird automatisch von DiceBear generiert. Der Aktivitäts-Feed zeigt aktuelle Besuche der Community in jeder Stadt.
Moderation: Automatische Regex erkennt Telefonnummern, Links und unangemessene Inhalte in Kommentaren, bevor sie im D1 gespeichert werden.