DG devGiants tech notes

Status

In progress

Silorium

Local, resilient household reserve management with mobile capture, stock rotation, and offline synchronization.

Kotlin Multiplatform Compose Desktop & Android Ktor SQLDelight Hexagonal architecture

The problem

A reserve is useful only when the household knows what it contains, where each lot is stored, and what should be used first. Silorium aims to make tracking fast enough to remain faithful to physical stock: immediate intake after shopping, guided retrieval during daily use, and progressive enrichment of product data.

The product combines a central administration application with an Android companion used near storage locations. The companion keeps recording movements offline, then clearly exposes synchronization state and any divergence requiring a decision.

An action-led experience

  • Scan a barcode or search for a product without heavy prerequisite setup.
  • Take a disposable expiry-date photo to assist entry, then remove the image.
  • Recommend the lot to retrieve based on its date and show its location before confirmation.
  • Track quantitative targets while exposing the inputs behind estimates.
  • Surface urgent expiry, stock discrepancies, and operations that require a decision.

Architecture for real conditions

Silorium uses two specialized modular monoliths, Central and Companion, connected through a versioned protocol. The shared deterministic domain stays isolated from UI, persistence, network, and external data connectors.

Inventory-determining movements form an immutable ledger. Read projections can be rebuilt, corrections preserve physical observations, and the central authority serializes canonical mutations. LAN REST synchronization is designed for retries, interruptions, and offline mobile operations without silent loss.

Project status

Product framing, UX journeys, the visual system, functional model, and reference architecture are established. The mockups show the target currently under development and validate the core actions, offline states, and accessibility before full implementation.

Follow development on GitLab.