I built a REST API for capturing screenshots and generating PDFs from URLs.
Why: I got tired of managing Puppeteer/Playwright in production. Memory leaks, zombie processes, Docker issues. So I wrapped it in an API.
Stack:
- Node.js + Fastify
- Playwright (more stable than Puppeteer in my experience)
- Self-hosted on Hetzner
Features:
- Screenshots: PNG, JPEG, WebP
- PDFs: A4, Letter, custom sizes
- Full-page capture, custom viewports
- Cookie consent auto-accept
- Lazy-load handling
API example: curl -X POST "https://www.screencraftapi.com/api/v1/screenshots" \
-H "Authorization: Bearer YOUR_KEY" \
-d '{"url": "https://example.com"}'
Free tier: 250 requests/month
Docs: https://www.screencraftapi.com/docs
Would love technical feedback. What's missing? What would make this useful for your projects?
cebert•1h ago
RobTheFrog•1h ago
cebert•1h ago
RobTheFrog•1h ago