How david-gy/mea-id works
MEA App is a static, mobile-first PWA for ID operations, room inventory, and a sheet-backed SUS Dashboard. Users sign in and use the ID Tracker to look up or operate on IDs; inventory users browse items and submit orders; authorized Admin/Dashboard users load normalized tracker data for totals, project rosters, readiness, and activity. Google Sheets are the shared stores, accessed through separate tracker and inventory Apps Script backends. Dashboard details are supported by the README and sampled client/model code; the Apps Script and inventory backend wiring is documented but not fully sampled.
Main entry points: index.html PWA shell · sus-dashboard-reference.gs Tracker API · dashboard.js Dashboard client · id-tracker.html ID Tracker
Components 15
PWA and Tracker
- PWA shell
index.html - ID Tracker
id-tracker.html - App logic
inventory.js - Offline shell
sw.js
Room Inventory
- Inventory catalog
index.html - Inventory and orders
inventory.js
SUS Dashboard
- Dashboard and activity views
index.html - Dashboard client
dashboard.js - Normalization and metrics
dashboard-model.js - Readiness rules
dashboard-rules.js
Sheet Backends
- Inventory backend
apps-script - Inventory sheets
- Tracker API
apps-script/sus-dashboard-reference.gs - Tracker sheets
Other components
- App user
Connections 16
- App user → PWA shell: opens
- PWA shell → ID Tracker: displays
- PWA shell → Inventory catalog: displays
- PWA shell → Dashboard and activity views: displays
- ID Tracker → App logic: uses
- Inventory catalog → Inventory and orders: uses
- Inventory and orders → Inventory backend: requests inventory and orders
- Inventory backend → Inventory sheets: reads and writes
- Dashboard and activity views → Dashboard client: uses
- Dashboard client → Tracker API: requests dashboard data and activity
- Dashboard client → Normalization and metrics: normalizes and derives
- Normalization and metrics → Readiness rules: applies rules
- Tracker API → Tracker sheets: reads tracker data
- Tracker API → Tracker sheets: records activity
- App logic → Tracker API: looks up and tracks IDs
- Offline shell → PWA shell: caches shell fallback