[verdict][prompt curatoriat][sursă: screenshotone.com][traducere: la coadă]
Pot să vibecodez ScreenshotOne?
// se construiește într-un weekend, dar rămân goluri reale
A competent coding agent can build a useful self-hosted screenshot endpoint around Playwright in a weekend. Matching ScreenshotOne's reliable browser fleet, proxy locations, stealth behavior, maintained blocking rules, videos, and production edge-case handling is a much larger infrastructure product.
încredere: ridicată
ce e: Managed API for rendering websites, HTML, and Markdown as images or PDFs
Indice de constructibilitate · joc editorial
- Preț de la 17 $ · la consum greutate: plus 2
- Timp un weekend greutate: plus 2
- Categorie unelte pentru dezvoltatori nu cântărește
- Moat scara infrastructurii · date proprietare · calitatea execuției greutate: minus 5
- Încredere ridicată greutate: plus 1
- Ce pierzi 5 elemente greutate: minus 2
- Site screenshotone.com (si apre in una nuova scheda) nu cântărește
Moat-ul cântărește mai mult decât prețul: refăcut, e un proiect, nu o seară.
Gioco editoriale: il verdetto dice se un agente può, l’indice se conviene.
Ce construiești
Send a URL or HTML to an authenticated HTTP endpoint and receive a cached PNG, JPEG, WebP, or PDF rendered by a local Chrome/Chromium worker.
ce îți trebuie
- Docker
- a machine with enough memory to run Chrome/Chromium
The basic API is buildable; dependable rendering at scale and the maintained cleanup data are the paid product.
Promptul
Un weekend cu un agent de coding. Golurile care rămân sunt mai jos, la „ce pierzi”.
Build me a self-hosted website screenshot API to replace ScreenshotOne for personal use. Requirements:
- Node 22 + Fastify + Playwright (Chromium) + better-sqlite3, one process, no queue system.
- GET /take?url=&format=png|jpeg|webp|pdf&width=&height=&full_page=&delay_ms= renders the
page in a pooled Chromium context and returns the image bytes directly.
- POST /take accepts raw HTML or Markdown in the body and renders that instead
(Markdown through marked into a plain template).
- Auth is one API key from .env, checked on every request; 401 without it.
- Cache by hash of the normalized options: metadata in SQLite, files under data/cache/,
with a cache_ttl option and a fresh=true bypass.
- Block ads and cookie banners the honest way: load EasyList and the
"I don't care about cookies" filter list at startup, apply them via request
interception, plus a small CSS hide-list for common consent overlays. Do not
promise it catches everything.
- Hard 15-second navigation timeout, one retry, then a JSON error with the reason;
never a hanging request.
- Concurrency capped at a small context pool (default 2) with an in-memory queue,
so the box does not fall over.
- Out of scope: proxies and IP locations, stealth evasion, scrolling video capture,
GPU rendering, dashboards, usage billing. That fleet is the paid product.
- README: npx playwright install chromium, .env keys, Chromium memory expectations,
and a one-line warning that hostile sites will beat this build. Prompt curatoriat: scris și revizuit manual pentru această aplicație. În engleză intenționat — e limba în care agenții de coding se descurcă cel mai bine.
Ce pierzi
- managed browser capacity, rate limiting, and high availability
- maintained ad, cookie banner, chat widget, and popup blocking rules
- residential proxies, selectable IP locations, and stealth tuning
- scrolling screenshots, video generation, and GPU rendering
- production support for difficult sites and browser edge cases
De ce se plătește în continuare
They want a screenshot API that stays reliable across hostile, slow, dynamic, and consent-heavy sites without operating Chrome/Chromium workers, updating blocking rules, managing proxies, or debugging browser failures.
moat: Scara infrastructurii Date proprietare Calitatea execuției ce e un moat
browser fleet, blocking-rule corpus, proxies, and rendering reliability
Alternative gratuite
N-ai chef să ți-o construiești? Astea există deja, sunt gratuite sau open source, și le-am verificat una câte una.
Respinse (1) — și de ce
- Browserless (si apre in una nuova scheda) — Free only for non-commercial use; production proprietary work needs a paid licence.
Ești de acord?
Balanța voturilor
Ancora nessun voto: il tuo è il primo.
Nessun voto ancora — il primo pesa.