docs: update roadmap and todo with dashboard v2 features
This commit is contained in:
11
ROADMAP.md
11
ROADMAP.md
@@ -291,12 +291,21 @@ PPF (Proxy Fetcher) is a Python 2 proxy scraping and validation framework design
|
||||
### Web Dashboard (Done)
|
||||
- [x] /dashboard endpoint with dark theme HTML UI
|
||||
- [x] /api/stats endpoint for JSON runtime statistics
|
||||
- [x] Auto-refresh with JavaScript fetch every 5 seconds
|
||||
- [x] Auto-refresh with JavaScript fetch every 3 seconds
|
||||
- [x] Stats provider callback from proxywatchd.py to httpd.py
|
||||
- [x] Displays: tested/passed/success rate, thread count, uptime
|
||||
- [x] Tor pool health: per-host latency, success rate, availability
|
||||
- [x] Failure categories breakdown: timeout, proxy, ssl, closed
|
||||
|
||||
### Dashboard Enhancements v2 (Done)
|
||||
- [x] Prominent check type badge in header (SSL/JUDGES/HTTP/IRC)
|
||||
- [x] System monitor bar: load, memory, disk, process RSS
|
||||
- [x] Anonymity breakdown: elite/anonymous/transparent counts
|
||||
- [x] Database health: size, tested/hour, added/day, dead count
|
||||
- [x] Enhanced Tor pool stats: requests, success rate, healthy nodes, latency
|
||||
- [x] SQLite ANALYZE/VACUUM functions for query optimization
|
||||
- [x] Lightweight design: client-side polling, minimal DOM updates
|
||||
|
||||
---
|
||||
|
||||
## Technical Debt
|
||||
|
||||
46
TODO.md
46
TODO.md
@@ -239,6 +239,52 @@ if __name__ == '__main__':
|
||||
- Failure categories: timeout, proxy, ssl, closed, etc.
|
||||
- proxywatchd.py: get_runtime_stats() method provides stats callback
|
||||
|
||||
### [x] 21. Dashboard Enhancements (v2)
|
||||
|
||||
**Completed.** Major dashboard improvements for better visibility.
|
||||
- Prominent check type badge in header (SSL/JUDGES/HTTP/IRC with color coding)
|
||||
- System monitor bar: load average, memory usage, disk usage, process RSS
|
||||
- Anonymity breakdown: elite/anonymous/transparent proxy counts
|
||||
- Database health indicators: size, tested/hour, added/day, dead count
|
||||
- Enhanced Tor pool: total requests, success rate, healthy nodes, avg latency
|
||||
- SQLite ANALYZE/VACUUM functions for query optimization (dbs.py)
|
||||
- Database statistics API (get_database_stats())
|
||||
|
||||
---
|
||||
|
||||
## Potential Dashboard Improvements
|
||||
|
||||
### [ ] Dashboard Performance Optimizations
|
||||
|
||||
**Goal:** Ensure dashboard remains lightweight and doesn't impact system performance.
|
||||
|
||||
**Current safeguards:**
|
||||
- No polling on server side (client-initiated via fetch)
|
||||
- 3-second refresh interval (configurable)
|
||||
- Minimal DOM updates (targeted element updates, not full re-render)
|
||||
- Static CSS/JS (no server-side templating per request)
|
||||
- No persistent connections (stateless HTTP)
|
||||
|
||||
**Future considerations:**
|
||||
- [ ] Add rate limiting on /api/stats endpoint
|
||||
- [ ] Cache expensive DB queries (top countries, protocol breakdown)
|
||||
- [ ] Lazy-load historical data (only when scrolled into view)
|
||||
- [ ] WebSocket option for push updates (reduce polling overhead)
|
||||
- [ ] Configurable refresh interval via URL param or localStorage
|
||||
- [ ] Disable auto-refresh when tab not visible (Page Visibility API)
|
||||
|
||||
### [ ] Dashboard Feature Ideas
|
||||
|
||||
**Low priority - consider when time permits:**
|
||||
- [ ] Dark/light theme toggle
|
||||
- [ ] Export stats as CSV/JSON from dashboard
|
||||
- [ ] Historical graphs (24h, 7d) using stats_history table
|
||||
- [ ] Per-ASN performance analysis
|
||||
- [ ] Geographic map visualization (requires JS library)
|
||||
- [ ] Alert thresholds (success rate < X%, MITM detected)
|
||||
- [ ] Mobile-responsive improvements
|
||||
- [ ] Keyboard shortcuts (r=refresh, t=toggle sections)
|
||||
|
||||
---
|
||||
|
||||
## Completed
|
||||
|
||||
Reference in New Issue
Block a user