One system. Four experiences. Built to run an optical business end to end.
Customers shop online and in-app, stores fulfil and sell, and the brand runs the whole network — all on a single API and database. Here's how the pieces fit together.
Four front-ends, one brain
Every surface talks to the same NestJS API over HTTPS with a signed token. The API is a modular monolith — one deployable service with clean internal boundaries — backed by Postgres and a Redis job queue.
Orders is the hub; a few shared services do the heavy lifting
The backend is split into focused modules. Most are independent, but the commerce core leans on a handful of shared services. Reading the arrows tells you the whole story.
Notifications is the shared outbound-message service everything queues through; Inventory, Marketing and Membership are shared services the order engine composes. Catalog, prescriptions, wishlist, reviews, CMS and more stand on their own.
Every order moves through one guarded lifecycle
Status is the engine. Each step is a checked transition that also moves money and stock in append-only ledgers — so the whole history is auditable.
Buying prescription glasses, made simple
When a customer picks a frame, the lens configurator walks them through a guided build — and assembles the frame, lens and coatings as one linked group in the cart.
Stock and money are append-only ledgers
Inventory is never an editable number. On-hand is the running sum of immutable movements per SKU per location — the same idea powers payments and store commissions, so every figure is reconstructable from history.
Five roles, scoped to their store
Access is role- and permission-based. Store staff only ever see their own store's data; the brand admin sees the whole network. The same rules guard every screen and every API call.
Everything connects around customers, orders and stores
A simplified map of how the core records relate — the full schema spans ~38 models across catalog, inventory, payments, marketing, CRM and more.
A modern, type-safe stack
See it in action
Browse the storefront, or explore the consoles that power the stores and the brand behind the scenes.