cloudflare-browser-rendering

Automate headless browser rendering on Cloudflare Workers for screenshots, PDFs, and scraping.

961|99|Updated Oct 20, 2025
One-click install
npx skills add https://github.com/jezweb/claude-skills --skill cloudflare-browser-rendering-jezweb
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cloudflare-browser-rendering
Source: https://github.com/jezweb/claude-skills/tree/main/skills/cloudflare-browser-rendering
Command: npx skills add https://github.com/jezweb/claude-skills --skill cloudflare-browser-rendering-jezweb

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @cloudflare/puppeteer, wrangler, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill eliminates the complexity and high costs of setting up and managing headless browser automation. It provides production-ready templates and expert guidance to automate screenshots, PDF generation, and dynamic web scraping directly on Cloudflare's global network, saving you thousands of tokens in research and debugging.

Core Features & Use Cases

  • Headless Browser Automation: Launch and control Chromium browsers with Puppeteer/Playwright APIs on Cloudflare Workers.
  • Performance & Cost Optimization: Implements session reuse, KV caching, and concurrency management to reduce costs by up to 94%.
  • Error Prevention: Built-in solutions for 6+ common errors like XPath issues, browser timeouts, and binding errors.
  • Use Case: Imagine you need to generate daily screenshots of 100 dashboard pages for a client report. Use this Skill to build a service that caches results, reuses browser sessions, and delivers all screenshots in seconds without hitting concurrency limits.

Quick Start

Use the cloudflare-browser-rendering skill to create a Worker that takes a screenshot of 'https://example.com' and returns it as a PNG image. Configure the browser binding and use the basic-screenshot.ts template.

Frequently Asked Questions about cloudflare-browser-rendering

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate screenshots and PDFs on Cloudflare Workers?

Automate screenshots and PDFs by launching a headless Chromium browser with Puppeteer on Cloudflare Workers using the browser binding. Configure env.MYBROWSER, pass it to puppeteer.launch(), and use Puppeteer APIs to navigate and capture pages directly at the edge without managing infrastructure.

Can I use Puppeteer and Playwright for web scraping on the edge?

Yes, both Puppeteer and Playwright work for dynamic web scraping on Cloudflare Workers. This Skill provides templates handling XPath issues, timeouts, and session limits, enabling you to scrape multi-page sites, manage concurrency, and reuse browser sessions to reduce costs by up to 94%.

What's the best way to reduce headless browser costs in production?

Reduce costs by implementing session reuse, KV caching, and concurrency management through the Cloudflare Workers sessions API and limits. This approach cuts browser automation expenses by up to 94% compared to traditional hosted solutions while maintaining performance.

Why does my headless browser automation fail on Cloudflare Workers?

Common failures include XPath issues, browser timeout errors, and binding misconfiguration. This Skill includes error-handling solutions for 6+ known errors and retry strategies to ensure the browser binding correctly passes to puppeteer.launch(env.MYBROWSER) and manages concurrency constraints.

Do I need wrangler to set up browser automation on Cloudflare?

Yes, wrangler configures the browser binding required for Puppeteer on Cloudflare Workers. This Skill depends on wrangler to initialize your Worker environment and enable the browser rendering capability at deployment.

Can I crawl and automate workflows across multiple pages at once?

Yes, crawl multi-page sites and automate browser workflows using Puppeteer with incognito contexts and session reuse. The Skill manages concurrency limits and prevents session exhaustion, allowing you to process 100+ pages efficiently without exceeding Cloudflare's resource constraints.