feat: v0.1.4 — device intelligence dashboard
Add tabbed dashboard at /dashboard/ with three D3.js visualizations: - Vendor treemap (devices grouped by type and vendor) - SSID social graph (force-directed, shared probed SSIDs as edges) - Fingerprint clusters (packed circles by device behavior) Intelligence API endpoints at /api/v1/intelligence/ with param validation. Dashboard built on htmx + Pico CSS dark theme + D3 v7, all vendored locally (make vendor). 13 new tests (59 total).
This commit is contained in:
@@ -27,6 +27,12 @@ pytest -v # Verbose output
|
||||
pytest -k test_sensors # Run specific tests
|
||||
```
|
||||
|
||||
## Static Assets
|
||||
|
||||
```bash
|
||||
make vendor # Download Pico CSS, htmx, D3.js to static/vendor/
|
||||
```
|
||||
|
||||
## Container
|
||||
|
||||
```bash
|
||||
@@ -66,6 +72,14 @@ curl localhost:5500/api/v1/probes/ssids
|
||||
|
||||
# Stats
|
||||
curl localhost:5500/api/v1/stats
|
||||
|
||||
# Intelligence (Device Intelligence Dashboard)
|
||||
curl localhost:5500/api/v1/intelligence/vendor-treemap
|
||||
curl "localhost:5500/api/v1/intelligence/ssid-graph?hours=24&min_shared=1&limit=200"
|
||||
curl "localhost:5500/api/v1/intelligence/fingerprint-clusters?hours=24"
|
||||
|
||||
# Dashboard
|
||||
open http://localhost:5500/dashboard/
|
||||
```
|
||||
|
||||
## Query Parameters
|
||||
@@ -78,6 +92,8 @@ curl localhost:5500/api/v1/stats
|
||||
| offset | devices, alerts, events, probes | Skip N results |
|
||||
| ssid | probes | Filter by SSID |
|
||||
| sensor_id | alerts, events | Filter by sensor |
|
||||
| hours | intelligence/ssid-graph, intelligence/fingerprint-clusters | Time window (default: 24) |
|
||||
| min_shared | intelligence/ssid-graph | Min shared SSIDs for link (default: 1) |
|
||||
|
||||
## Files
|
||||
|
||||
|
||||
Reference in New Issue
Block a user