Web-only self-hosted service based on the spec-pricing-screenshots-v1-ru.md specification.
- Accepts
user_idand a comma-separated list of domains. - Deduplicates domains, processes up to 10 unique domains.
- Searches for pricing page via
https://<domain>/pricingwith fallback tohttp://<domain>/pricing. - Captures 4 screenshots (desktop/mobile viewport + full-page).
- Generates PDF in memory:
1 domain = 1 page. - Does not store screenshots or PDFs on the server.
- Writes analytics logs (
user_id,domains[],domains_count,pdf_status, etc.) with 90-day retention.
npm install
npx playwright install chromium
npm startOpen in browser: http://localhost:3000
POST /api/runs— create a runGET /api/runs/:runId/status— status and progressGET /api/runs/:runId/download— download PDFGET /api/analytics/summary— aggregated analyticsGET /api/analytics/runs— list of runs
- Logs are stored in
data/analytics.ndjson. - Runs and PDF storage are in-memory at runtime.
- Runs are automatically removed from memory ~20 minutes after completion.