7 Commits

Author SHA1 Message Date
salvacybersec
3872240e8a feat(phase-18): embedded web dashboard with chi + htmx + REST API + SSE
pkg/web: chi v5 server with go:embed static assets, HTML templates,
14 REST API endpoints (/api/v1/*), SSE hub for live scan/recon progress,
optional basic/token auth middleware.

cmd/serve.go: keyhunter serve [--telegram] [--port=8080] starts web
dashboard + optional Telegram bot.
2026-04-06 18:11:33 +03:00
salvacybersec
bb9ef17518 merge: phase 18 API+SSE 2026-04-06 18:08:52 +03:00
salvacybersec
d557c7303d feat(18-02): SSE hub for live scan/recon progress streaming
- SSEHub with Subscribe/Unsubscribe/Broadcast lifecycle
- Non-blocking broadcast with buffered channels (cap 32)
- SSE handlers for /api/v1/scan/progress and /api/v1/recon/progress
- Proper text/event-stream headers and SSE wire format
- 7 passing tests covering hub lifecycle, broadcast, and HTTP handler
2026-04-06 18:06:35 +03:00
salvacybersec
76601b11b5 feat(18-02): REST API handlers for /api/v1/* endpoints
- Stats, keys, providers, scan, recon, dorks, config endpoints
- JSON response wrappers with proper tags for all entities
- Filtering, pagination, 404/204/202 status codes
- SSE hub stub (full impl in task 2)
- Resolved merge conflict in schema.sql
- 16 passing tests covering all endpoints
2026-04-06 18:05:39 +03:00
salvacybersec
268a769efb feat(18-01): implement chi server, auth middleware, overview handler
- Server struct with chi router, embedded template parsing, static file serving
- AuthMiddleware supports Basic and Bearer token with constant-time comparison
- Overview handler renders stats from providers/recon/storage when available
- Nil-safe: works with zero config (shows zeroes, no DB required)
- All 7 tests pass
2026-04-06 18:02:41 +03:00
salvacybersec
3541c82448 test(18-01): add failing tests for web server, auth middleware, overview handler
- Test overview returns 200 with KeyHunter in body
- Test static asset serving for htmx.min.js
- Test auth returns 401 when configured but no credentials
- Test basic auth and bearer token pass through
- Test overview shows stat cards
2026-04-06 18:02:04 +03:00
salvacybersec
dd2c8c5586 feat(18-01): chi v5 dependency, go:embed static assets, HTML layout and overview templates
- Add chi v5.2.5 to go.mod
- Vendor htmx v2.0.4 minified JS in pkg/web/static/
- Create go:embed directives for static/ and templates/
- Create layout.html with nav bar and Tailwind CDN
- Create overview.html with stat cards and findings table
2026-04-06 18:01:37 +03:00