How nitin-o/pi-admin-dashboard works
PI Admin Dashboard is a web console for signing in and viewing Raspberry Pi system, network, and backend-log information. The request flow passes through Express routing and authentication before controllers call domain services; logs are aggregated from systemd and application files, while network and system services provide host metrics. The source index identifies the client entry point, but no excerpt or README establishes how that client is served or how the system-statistics service gathers data, so those links are omitted.
Main entry points: server.js Express Server · auth.routes.js Auth Routes · network.service.js Network Service · logs.service.js Log Aggregator
Components 21
Dashboard UI
- Dashboard Client
client/src/main.js - Login UI
public/js/login.js
HTTP and Auth
- Express Server
src/server.js - Auth Routes
src/routes/auth.routes.js - Auth Controller
src/controllers/auth.controller.js - Auth Middleware
src/middleware/auth.middleware.js - Token Utilities
src/utils/auth.utils.js
Host Monitoring
- System Routes
src/routes/system.routes.js - System Controller
src/controllers/system.controller.js - System Service
src/services/system.service.js - Network Routes
src/routes/network.routes.js - Network Controller
src/controllers/network.controller.js - Network Service
src/services/network.service.js
Log Monitoring
- Log Routes
src/routes/logs.routes.js - Log Controller
src/controllers/logs.controller.js - Log Aggregator
src/services/logs.service.js
Other components
- Administrator
- Host Network APIs
- Internet Check
- System Journal
- Application Logs
Connections 21
- Administrator → Dashboard Client: uses
- Express Server → Auth Routes: mounts
src/server.js - Express Server → Auth Middleware: protects routes
src/server.js - Express Server → System Routes: mounts
src/server.js - Express Server → Network Routes: mounts
src/server.js - Express Server → Log Routes: mounts
src/server.js - Auth Routes → Auth Controller: dispatches
src/routes/auth.routes.js - Auth Routes → Auth Middleware: guards
src/routes/auth.routes.js - Auth Controller → Token Utilities: verifies and signs
src/controllers/auth.controller.js - Auth Middleware → Token Utilities: verifies token
src/middleware/auth.middleware.js - System Routes → System Controller: dispatches
src/routes/system.routes.js - System Controller → System Service: requests stats
src/controllers/system.controller.js - Network Routes → Network Controller: dispatches
src/routes/network.routes.js - Network Controller → Network Service: requests stats
src/controllers/network.controller.js - Network Service → Host Network APIs: queries interfaces
src/services/network.service.js - Network Service → Internet Check: checks reachability
src/services/network.service.js - Log Routes → Log Controller: dispatches
src/routes/logs.routes.js - Log Controller → Log Aggregator: requests logs
src/controllers/logs.controller.js - Log Aggregator → System Journal: reads journal
src/services/logs.service.js - Log Aggregator → Application Logs: reads files
src/services/logs.service.js - Express Server → Login UI: serves login script
src/server.js