iToverDose/Software· 30 JUNI 2026 · 00:03

BrewCore: Wie eine Kaffee-App mit KI und DynamoDB den Espresso revolutioniert

Eine selbstgebaute Kaffee-App nutzt KI-Coaching und serverlose Cloud-Architektur, um Espresso-Brühen präzise zu dokumentieren und zu optimieren. Entstanden beim H0 Hackathon, verbindet BrewCore Wissenschaft mit Barista-Wissen – komplett ohne physische Infrastruktur.

DEV Community4 min0 Kommentare

Espresso zu Hause ist eine Wissenschaft für sich. Baristas analysieren jeden Mikroparameter – Grammgewicht, Extraktionszeit, Druckprofil – doch die meisten notieren diese Daten auf Zetteln oder im Kopf. Wenn der Morgenkaffee misslingt, hilft kein Datenbankzugriff, sondern nur ein schlechtes Ergebnis und ein veralteter Reddit-Thread. Mit BrewCore, einer Espresso-Tracking-Anwendung, die ich für den H0 Hackathon entwickelte, ändere ich das.

BrewCore verwandelt die traditionelle Espresso-Zubereitung in ein datengesteuertes Erlebnis. Statt auf einfache Timing-Apps setzt die Anwendung auf eine vollständige Architektur mit Next.js 15, Vercel, Amazon DynamoDB und Amazon Bedrock, um Espresso-Daten systematisch zu erfassen, zu analysieren und durch KI-gestützte Empfehlungen zu verbessern. Das Ziel: Baristas zu Datenwissenschaftlern machen – mit einer Infrastruktur, die so robust wie effizient ist.

Warum Kaffee mehr als nur Timing ist

Die meisten Kaffee-Apps reduzieren Espresso auf eine Stoppuhr. Doch hinter jedem perfekten Shot stecken komplexe Variablen:

  • Bestandsmanagement: Wie viele Gramm eines bestimmten Kaffees sind noch übrig?
  • Wissenschaftliche Dokumentation: Was passierte letzten Dienstag, als die Mahlgrad-Einstellung feiner gewählt, aber die Temperatur gesenkt wurde?
  • Personalisiertes Coaching: Wie korrigiert man einen säuerlichen Espresso bei einer bestimmten Maschine und anhand der historischen Daten?

BrewCore löst diese Herausforderungen durch eine vollständig serverlose Architektur, die sich nahtlos in die Cloud integriert. Die Anwendung nutzt Next.js Server Actions, um direkte Interaktionen mit der Datenbank zu ermöglichen – ohne den Umweg über eine klassische API-Schicht. Das spart nicht nur Infrastrukturkosten, sondern beschleunigt auch die Entwicklung.

Die serverlose Architektur: Effizienz ohne Kompromisse

Ein zentrales Ziel des Projekts war es, während des Hackathons ohne manuelle Infrastrukturverwaltung auszukommen. Dafür setzte ich auf eine klare Trennung zwischen Frontend, Authentifizierung, Datenpersistenz und KI-Funktionen.

Datenfluss von der Tasse zur Cloud

Die Anwendung verarbeitet Benutzerinteraktionen in vier klar definierten Schritten:

  • Benutzerinteraktion: Die React-basierte PWA wird über Vercel gehostet und kommuniziert verschlüsselt mit den Next.js Server Actions.
  • Authentifizierung: Nutzeranmeldungen und Sitzungsverwaltung laufen komplett am Edge über das Amazon Cognito User Pool mit dem Amplify-Client-SDK.
  • Datenpersistenz: Statt einer separaten API oder Lambda-Funktion schreibt die Anwendung direkt über die AWS SDK v3 in DynamoDB-Tabellen – ein Ansatz, der Entwicklungszeit und Betriebskosten spart.
  • KI-Coaching: Bei Bedarf analysiert die Anwendung historische Extraktionsdaten und nutzt die Amazon Bedrock Converse API, um mit dem Modell `nova-micro` personalisierte Empfehlungen zu generieren.

DynamoDB: Die Kunst der NoSQL-Optimierung

Viele Entwickler greifen bei relationalen Daten zu SQL. Doch für BrewCore setzte ich auf DynamoDB – und optimierte die Datenbankstruktur strikt nach den tatsächlichen Anwendungsfällen.

Anstatt teure Scans durchzuführen, teilte ich die Daten in acht dedizierte Tabellen auf, die jeweils für O(1)-Lookups und gezielte Abfragen optimiert sind. Dazu gehören:

  • `users` – Benutzerprofile und maschinenspezifische Einstellungen
  • `beans` – Lagerbestand, Rösterdetails und Warnungen bei niedrigem Vorrat
  • `shots` – Detaillierte Extraktionsparameter wie Mahlgrad, Dosis, Ausbeute, Zeit und Geschmacksnoten
  • `interactions` & `comments` – Soziale Metriken wie Likes und Feedback auf dem Community-Feed
  • `user_stats` – Voraggregierte Zähler, um teure Laufzeitberechnungen zu vermeiden
  • `follows` & `product_states` – Verwaltung sozialer Beziehungen und UI-Statusflags

Entwicklung ohne Cloud-Wartezeit: Der Mock-Workflow

Ein häufiges Hindernis bei Hackathons ist die Wartezeit auf Cloud-Ressourcen. BrewCore umgeht dieses Problem mit einem Dual-Backend-Ansatz:

  • Ein lokaler `localStorage`-Mock spiegelt die Struktur der DynamoDB-Tabellen exakt wider.
  • Die gesamte UI wurde zunächst offline entwickelt, bevor die Anwendung mit einem einfachen Umgebungswechsel auf die produktiven AWS-Tabellen umgestellt wurde.

Dieser Workflow ermöglichte es mir, den gesamten Prototypen in wenigen Stunden zu entwickeln – ohne auf Cloud-Provisionierung warten zu müssen.

KI als persönlicher Barista: Von generischen Tipps zu datenbasierten Empfehlungen

Allgemeine KI-Antworten wie „Mahlen Sie feiner“ helfen nicht weiter, wenn die Anwendung nicht weiß, wo die Reise beginnt. BrewCore nutzt Amazon Bedrock mit dem Modell `nova-micro`, um personalisierte KI-Coaching zu ermöglichen.

Dazu wird der KI ein strukturierter Kontext bereitgestellt, der folgende Daten enthält:

  • Benutzerprofil und Maschinenparameter
  • Historische Extraktionsprotokolle
  • Aktuelle Brühdaten

Statt generischer Ratschläge analysiert die KI direkt die Datenbankeinträge und gibt fundierte Empfehlungen – etwa zur Anpassung von Temperatur, Mahlgrad oder Extraktionszeit. Das Ergebnis ist kein Ratespiel, sondern eine datengetriebene Espresso-Optimierung.

Wichtige Lehren aus dem Hackathon

Die Entwicklung von BrewCore brachte unerwartete Herausforderungen mit sich – und wertvolle Erkenntnisse:

  • Server Actions benötigen robuste Fehlerbehandlung

Next.js Server Actions umgehen traditionelle API-Schichten. Doch ohne explizite Fehlerbehandlung können Schreiboperationen in DynamoDB stumm fehlschlagen – etwa bei abgelaufenen IAM-Berechtigungen. Ich implementierte eine zentrale Fehlerbehandlungslogik, die AWS-SDK-Ausnahmen in verständliche Benachrichtigungen umwandelt, ohne sensible Cloud-Konfigurationen preiszugeben.

  • DynamoDB GSIs erzwingen strikte Datentypen

Bei der Einrichtung des Community-Feeds scheiterte die Infrastrukturprovisionierung zunächst an falschen Datentypen für Global Secondary Indexes (GSIs). Boolesche Werte wie isPublic mussten als Strings ("true" oder "false") gespeichert werden – eine Lektion darin, dass NoSQL-Design stark von Infrastrukturvorgaben abhängt.

  • LLMs brauchen präzise Prompt-Grundlagen

Meine ersten Versuche mit Amazon Bedrock führten zu halluzinierten Rezepten, die keine Rücksicht auf die tatsächlichen Daten des Nutzers nahmen. Die Lösung lag in strukturierter JSON-Kontextinjektion: Statt langer Systemprompts übergab ich der KI eine serialisierte Payload der letzten drei Extraktionen, um personalisierte und datenbasierte Empfehlungen zu ermöglichen.

BrewCore beweist, dass selbst komplexe Kaffee-Wissenschaft mit moderner Technologie zugänglich gemacht werden kann. Die Anwendung zeigt, wie serverlose Architekturen, NoSQL-Optimierung und KI-gestützte Analysen zusammenwirken, um Alltagsprobleme – wie den perfekten Espresso – zu lösen. Und das Beste: Die gesamte Infrastruktur lässt sich in Stunden aufbauen, ohne teure Hardware oder manuelle Serververwaltung.

Die nächste Tasse Kaffee wird nicht nur besser schmecken – sie wird auch eine Datenquelle für die nächste Verbesserung sein.

KI-Zusammenfassung

H0 Hackathon için geliştirilen BrewCore, Next.js 15, Vercel ve DynamoDB ile evde espresso çekimini veri odaklı bir sisteme dönüştürüyor. Kişiselleştirilmiş AI tavsiyeleriyle kullanıcı deneyimini nasıl iyileştirdiğini keşfedin.

Kommentare

00
KOMMENTAR SCHREIBEN
ID #PUXKC3

0 / 1200 ZEICHEN

Menschen-Check

7 + 8 = ?

Erscheint nach redaktioneller Prüfung

Moderation · Spam-Schutz aktiv

Noch keine Kommentare. Sei der erste.