Zum Inhalt springen
LEX
Tastatur: / oder Befehl K zum Fragen oder Springen, Backtick öffnet das Terminal.

LEX · der Pass

Bon

Bon

#

Von
Zeit
Bestellung

Abschicken

DE · EN · ES

Zurück zum Lab

Gastronomie01 / 12

Enigma

Eine Plattform für den Restaurantbetrieb, mehrere Standorte unter einem Konto

Status
In Entwicklung
Zeitraum
2026 →
Rolle
Konzeption und Entwicklung, von Anfang bis Ende
Für
Unabhängige Restaurantgruppen mit mehr als einem Standort.
Enigma Console · ReservierungenDemo-Umgebung — Beispieldaten
Enigma Console, Reservierungen: ein 2D-Grundriss des Obergeschosses mit Gastraum und langer Terrasse; jeder Tisch trägt ein Label wie „S3 Libre“. Links die Servicezeiten.

Saalplan · 2D

Der Raum live von oben: jeder Tisch mit Nummer und Status, Etage für Etage.

1 von 3
So funktioniert die Zuteilung (Simulation)Ein interaktives Modell der Idee — zum Ausprobieren öffnen.

Simulation — zeigt die Idee, nicht die Produktions-Engine.

Tischvergabe, Schritt für Schritt

INNENTERRASSET1✕ 2T22T3✕ 4T44T56T62T7✕ 2T82T94T104
  • Frei
  • Für diese Anfrage belegt
  • Vergeben
Personen
2 Gäste
Bevorzugter Bereich

Ergebnis

Wähle Personenzahl, Uhrzeit und Bereich und frage dann einen Tisch an.

Belegung

Problem

Restaurants arbeiten mit einem Flickenteppich aus Werkzeugen für Buchung, Service, Personal und Abrechnung, und jedes kennt nur einen Ausschnitt der Schicht. Regeln wie Arbeitsrecht oder Allergenkennzeichnung stecken am Ende in den Köpfen.

Enigma steuert den Tagesbetrieb von Restaurants: Reservierungen, Tischzuteilung, Personaleinsatz, Zahlungen, Rechnungen, Treueprogramm, Bestellungen und einen Shop. Es begann als Website eines Restaurants in Calpe, Spanien, und wuchs zu einer Plattform, die später als Multi-Tenant-SaaS dienen soll.

Fallstudie

Die Plattform deckt ein Konto mit mehreren Standorten ab. Reservierungen und Verfügbarkeit laufen über Zuteilungs-Engines, die entscheiden, welcher Tisch zu welcher Gruppe passt und wann. Die Personalplanung wendet arbeitsrechtliche Regeln an, und Zahlungen, Rechnungsstellung (Veri*factu) und Wallet-Pässe stehen neben Treueprogramm und Bestellungen.

Es ist ein Workspace aus neun Apps (API, Assistent, Konsole, Speisekarte, Team, Terminal, Shop, Web und Worker) auf rund fünfundvierzig gemeinsamen Paketen. Ziel ist eine einzige Basis, die später viele Gastronomiebetriebe ohne Neuentwicklung bedienen kann.

Architektur

Jede Operation läuft über einen zentralen Kernel-Dispatcher. Die Paketschichtung erzwingt dependency-cruiser, die Authentifizierung ist ein OAuth-2.1-Server mit EdDSA-signierten JWTs und JWKS-Endpunkt, und Berechtigungen sind serverseitiges RBAC mit standortbezogenen Deny-Overrides. Der Stack läuft in Docker Compose mit Postgres, Caddy, Gotenberg und einem Cloudflare Tunnel und bietet MCP-Schnittstellen.

Technische Entscheidungen

  1. Ein Dispatcher als Engstelle, damit Protokollierung, Berechtigungen und Regeln an einer Stelle greifen.
  2. Schichtgrenzen werden vom Tooling geprüft, nicht per Konvention.
  3. Serverseitiges RBAC mit standortbezogenen Deny-Overrides, damit ein Konto sicher viele Standorte halten kann.
  4. Zuerst für ein Konto gebaut, das Datenmodell bleibt aber bereit für Multi-Tenant-SaaS.

Herausforderungen & Abwägungen

Neun Apps und Dutzende Pakete stimmig zu halten, während sich die Regeln eines echten Restaurants laufend ändern. Dispatcher und erzwungene Schichtung sorgen dafür, dass dieses Wachstum sicher bleibt.

Belegte Ergebnisse

  • ≈2.070 Commits
  • ~1.950 Testdateien
  • 9 Apps und ~45 Pakete in einem Workspace

Die Status sind sachlich: Nichts wird fertiger dargestellt, als es ist.

Stack

Fragen oder springen

Gib eine Frage oder einen Namen ein. Die Navigation ist deterministisch — kein Chatbot.

Drücke / oder ⌘K