Dashboard
Warehouse overview
?
Sign in
Recent Activity
Inventory Breakdown
Upcoming Events
Pending Incoming
Aging Report — Longest in Warehouse
⚠ ≥180d   ⚠ ≥90d   ✓ ≥30d
Factory Aging — Spas Built but Not Shipped
⚠ ≥90d   ⚠ ≥30d   ✓ ≥14d
Arriving to Warehouse
Drag items onto the map
All
Spas
Covers
Material
Warehouse Floor Map
Drag items from queue → map · Drag blocks to move
All
Hot Tubs
Swim Spas
Extra
Empty
Hot Tub
Swim Spa
Extra/Stock
Material
Forklift Aisle
Dock Door
Marriage Inventory
April 2026
Day Events
Select a day to see events. Click a day in the calendar to start.
All Events
📦 Receive Arrivals
Scan QR or type S/N — auto-matches against the incoming list
Incoming List
All items arriving to warehouse
🚛
Scan to Load Truck
Scan QR before loading. Each scan removes the spa from factory inventory.
Or type S/N if QR is damaged:
Ready to Load
Spas marked ready by Factory · waiting for truck pickup
Loaded Today
Spas you've scanned and put on the truck today
🚚
In Transit · Loaded on Truck
Spas and accessories scanned by Transit/Loader and currently moving from factory to warehouse. Read-only for all roles — only Admin can modify.
Items in Transit
Loaded on truck, awaiting receipt at warehouse
Receive Material
Log supplies, parts & equipment with arrival photo
Click to add package photo
Materials Log
No materials logged.
Dispatch Log ?
Units picked up by dealers
All 0 🚚 Picked Up 0 ✓ Delivered 0 📅 This Week 0 📅 This Month 0
No dispatches yet.
Factory Warehouse — Aspen Production
Spas built and ready, plus loose accessories. Ship daily to receiving warehouse. Married accessories must travel with their spa.
Spas Ready 0
Accessories 0
Marriages — Tina + Accessory Pairings ?
A married spa CANNOT be dispatched until its accessory arrives from the factory. The dispatch button will warn you.
Pending 0
Delivered 0
All 0
🛌
Cover Inventory — Warehouse Storage ?
Physical covers waiting to be paired with spas. When you save a spa with a cover, stock here decrements automatically.
All Cover Stock
Click a row to edit qty / threshold / location · Red = at or below low-stock threshold
Factory Requests
Items that Factory needs from the warehouse
Receiving (Factory)
Items shipped from warehouse · Check off as they arrive
Email Notifications
Recipients
None
Authorized to Dispatch
Google Calendar
Connection
Not connected
On dispatch, Google Calendar opens pre-filled with entry date, pickup date/time, unit & dealer details, and authorization.
Backup & Restore
Local Storage
Data is autosaved to your browser. Download a backup regularly — clearing browser cache or switching devices will lose data without a backup file.
☁ Cloud Sync (Firebase)
When signed in, the app pushes a backup to Firebase every 2 minutes (and when you click Sync Now). Photos go to Firebase Storage. Only emails in the whitelist can sign in. To configure Firebase, see README.md at the repo.
🔬 System Health & Diagnostics
Runs a battery of 18+ tests covering localStorage, Firebase sync, write/read roundtrips, code coverage of mutations, and local-cloud divergence. Non-destructive — touches no warehouse data.
Run this after every deploy, when something feels off, or weekly as a routine health check. The sync badge in the top-right shows live status; this panel gives you the full breakdown.
Floor Layout
14
Rows A–N
7
Storage
5
Dock Doors
🔑 Admin Tools
Restricted actions — admin role only
After deploying a new version, click this to notify all other devices. They'll show an "Update available" banner and reload to the latest code.
Sync runs automatically in background — checks every 10s, heartbeat pull every 30s, auto-fixes silently. Use this button only if you want to see real-time stats or run a manual test.
Deletes all units, factory items, marriages, dispatched, cover stock, materials, requests, incoming. Keeps color/model library + settings + authorized users. Auto-downloads a backup JSON first.