How skimatt/dashboard_monitoring_bps works
Dashboard Monitoring BPS Bireuen reads operational data from Google Sheets through Google Apps Script and presents monitoring views in a browser dashboard. Its principal workflow runs from sheet data through backend aggregation to overview, regional, staff, SLS, and risk analysis. Users can also search and export dashboard tables. The separate AI workflow sends browser-held dashboard context through a Cloudflare Worker to OpenRouter. Backend and frontend wiring is based on README documentation; source excerpts were available only for the Worker, so uncertain implementation details are omitted.
Main entry points: js.html Dashboard logic · cloudflare-worker.js AI proxy · kode.gs Apps Script API · index.html Dashboard layout
Components 16
Operational data
- Google Sheets
- Apps Script API
kode.gs
Monitoring dashboard
- Dashboard layout
index.html - Dashboard styles
css.html - Dashboard logic
js.html - Executive overview
js.html - District analysis
js.html - Staff analysis
js.html - SLS details
js.html - Risk monitor
js.html - Search and export
js.html
AI assistant
- AI chat drawer
ai.html
AI service
- AI proxy
cloudflare-worker.js - Worker API secret
- OpenRouter
Other components
- Dashboard user
Connections 17
- Dashboard user → Dashboard layout: opens dashboard
- Dashboard layout → Dashboard logic: loads interface
- Dashboard layout → Dashboard styles: applies styles
- Dashboard logic → Apps Script API: requests data
- Apps Script API → Google Sheets: reads sheets
- Apps Script API → Dashboard logic: returns data
- Dashboard logic → Executive overview: renders summary
- Dashboard logic → District analysis: renders analysis
- Dashboard logic → Staff analysis: renders analysis
- Dashboard logic → SLS details: renders details
- Dashboard logic → Risk monitor: renders risks
- Dashboard logic → Search and export: handles search
- Dashboard user → AI chat drawer: asks question
- AI chat drawer → AI proxy: sends context
- AI proxy → Worker API secret: reads secret
- AI proxy → OpenRouter: forwards request
- AI proxy → AI chat drawer: returns answer