Pixel-perfect
screenshots in 5s

Full-page, viewport-aware, cached. Site-Shot API + self-hosted Chromium fallback. Rate-limited, SSRF-hardened, audit-logged.

Generate

checking…

History

Chain-of-custody

Every shot logged: data/audit.log JSONL with ts, ip, url, params, sha256, provider, duration. File hash = evidence. Cache TTL 1h, LRU 1000. SSRF blocks private ranges + metadata + DNS rebinding.

POST /api/shot • GET /api/history?limit=50 • GET /api/health • GET /cache/:file