The Neighbourhood store in 3D, laid out from the store plan, with the team at work: two shifts, staggered breaks, deliveries on Tuesday, Thursday and Saturday, a Duty Manager directing jobs, and customers all day, busiest after 5pm. Every shelf carries its own numbers from Shelly's weekly run, and the team's jobs come from them.
| Shelf | Where | Sales 7d | vs last wk | Margin | Waste | Why |
|---|
Plan. Fixtures are traced from the printed store plan (1 px = 2 cm) in modules/store-floor/planogram.yaml: position, type (gondola, wall, chiller, freezer, island, counter) and which SKUs sit on each.
Numbers. shelly/storefloor.py joins the plan with the weekly run: 7-day sales, change on last week, margin, waste, days of cover, count variance and anomaly flags per product, rolled up per fixture.
Status. Red when a shelf needs action today (recall, likely stock-out, shrinkage, waste blow-out, under a day of cover), amber to watch (on today's order, falling sales, count off), green when on plan. Shelly suggests; decisions still wait for you.
Your data. Point Shelly at real exports and rebuild: products land on shelves by SKU, then by category. Anything that fits nowhere is listed, never dropped. python -m shelly store prints the same walk-through.