Avalonia Desktop
Vollständiges Cockpit für Stammdaten, Bestand, Einkauf, Preise, Chargen, Pfand und Reporting.
Produktentwicklung · verteiltes System
Eine Home-Operations-Plattform, die Vorräte, Einkäufe, Preise, Chargen und Pfand über mehrere Geräte hinweg verlässlich steuert – mit einem unveränderlichen Datenkern statt überschreibbarer Momentaufnahmen.
Die eigentliche Aufgabe
Ein Produkt im Schrank scheint simpel – bis mehrere Lagerorte, Teilmengen, Einkäufe, Umlagerungen, Inventuren, Chargen, Mindesthaltbarkeit und Pfand zusammenkommen. Ein einzelner überschriebener Zahlenwert könnte dann nicht mehr erklären, warum der Bestand so ist.
KuraPilot modelliert deshalb jede Veränderung als Buchung. Der aktuelle Zustand entsteht aus der Historie. Selbst komplexe Vorgänge bleiben nachvollziehbar, wiederholbare API-Aufrufe erzeugen keine Doppelbuchungen und Datenbank-Trigger schützen die Journale vor stillen Änderungen.
System Architecture
Alle Oberflächen verwenden dieselben fachlichen Use Cases. Der modulare Monolith hält die Domäne im Zentrum; Clients, HTTP, Datenbanken und Betrieb bleiben klar getrennte Adapter.
Vollständiges Cockpit für Stammdaten, Bestand, Einkauf, Preise, Chargen, Pfand und Reporting.
Kotlin, Jetpack Compose, CameraX und ML Kit verbinden Produkt-, Bestands- und Einkaufsflows mit echten Barcodes.
Authentifizierte Verträge, ProblemDetails, Idempotenz und atomare Application Use Cases für alle Clients.
Zentraler Betrieb mit PostgreSQL; SQLite bleibt lokaler Entwicklungsmodus. Beide schützen dieselben Fachregeln.
Operational Capabilities
Die Bereiche teilen eine gemeinsame Buchungslogik. Ein Einkauf kann Preisbeobachtungen, Wareneingänge, Chargen, Pfand und Einkaufslisten verändern – innerhalb kontrollierter Transaktionen.
Zugänge, Verbrauch, Umlagerung, Inventurkorrektur und Sonderabgang landen im unveränderlichen Bewegungsjournal. Negative Bestände werden verhindert; Lagerorte, Chargen und FEFO bleiben erhalten.
Mindest- und Zielbestände erzeugen erklärbare Vorschläge. Einkaufslisten bleiben persistent; der Kaufabschluss schreibt Kaufhistorie, Preis und Bestand als zusammenhängenden Vorgang.
PDF-Belege von REWE, Lidl und Netto werden zunächst als Vorschau strukturiert. Erst eine kontrollierte Bestätigung importiert Kauf- und Preisbeobachtungen; der Bestand ändert sich dabei nicht still im Hintergrund.
Desktop und Android registrieren sich über kurzlebige Pairing-Codes. Geräte besitzen widerrufbare Identitäten, signieren den Austausch und erhalten kurzlebige Zugriffstokens mit begrenztem Scope.
Engineering Depth
Die Komplexität steckt nicht nur im sichtbaren Produkt. Ein großer Teil des Projekts schützt Daten, Geräte und Betriebsabläufe, wenn etwas wiederholt, unterbrochen oder migriert wird.
Bestand, Käufe und Pfand bleiben getrennt, append-only und durch Datenbank-Trigger geschützt.
Stabile Request-Keys verhindern Doppelbuchungen bei Retries und werden im Zentralbetrieb atomar gespeichert.
PostgreSQL-Backups, Restore-Abnahme, Monitoring, Update-Skripte und portabler Export gehören zum System.
197 Testmethoden decken Domain, Application, Infrastructure, API, Desktop, Android und Wurschtgate ab.
SQLite-Historien werden nur über dokumentierte, prüfbare Pfade in den PostgreSQL-Zentralbetrieb überführt.
Ein eigenes Übergabe- und Tower-Werkzeug verbindet Commits, strukturierte Handovers und Betriebsstatus.
Development Flightplan
Jede Etappe hat eine neue Systemgrenze eingeführt. Geplante Phasen sind bewusst keine automatische Implementierungsfreigabe.
Produkte, Lager, Einkauf, Preise, Chargen, Pfand, Reporting und UI-Refactor.
HTTP-Verträge, Authentifizierung, Scope-Prüfung und idempotente Schreibvorgänge.
Migration, Pairing, API-only Desktop, Backup/Restore und E‑Bon-Import.
Produkte, Bestand, Einkauf und physischer CameraX/ML-Kit-Scanner; Offline/Sync und Release-Abnahme folgen.
Signing, Distribution, Upgrade, Compliance, Accessibility und finale Betriebsabnahme.
Dokumentierter Qualitätsstand
Letzte vollständig dokumentierte Gesamt-Abnahme des zentralen Betriebs: Release-Build ohne Fehler, beide Datenbankmodelle ohne Drift, keine bekannten verwundbaren NuGet-Pakete und physisch geprüfter REWE-E‑Bon-Import. Der aktuelle lokale Kontrolllauf wurde durch Windows Application Control beim Laden gebauter DLLs blockiert und deshalb nicht als neue Abnahme gewertet.
Produkt in Aktion
Die Android-Oberfläche bringt die zentralen Abläufe dorthin, wo sie gebraucht werden: direkt an Vorrat, Einkaufsliste und Regal. Alle Ansichten greifen auf dasselbe fachliche Modell zu.

Bestand, offene Einkäufe und kritische Artikel auf einen Blick.

Produkte suchen, filtern und ihre Mengen direkt am Lagerort prüfen.

Bedarf erfassen und die gemeinsame Liste unterwegs abarbeiten.
Echte Aufnahmen aus einem Android-Emulator mit neutralen, eigens für die Präsentation angelegten Demodaten. Es wurden keine privaten Haushalts- oder Produktionsdaten verwendet.
Produktstatus
Aktiver Entwicklungsstand: KuraPilot ist der geplante öffentliche Produktname des intern weiterhin als CurryKing geführten Projekts. Die finale Verwendung bleibt von einer vollständigen Markenprüfung abhängig.