Introduction
A curated collection of experiments demonstrating practical developer tools across Cloudflare products
A curated collection of experiments demonstrating what developers can build using most Cloudflare products - not Workers alone.
The goal of this repository is to showcase real-world developer tools and utilities built on the Cloudflare platform. Experiments typically deploy as Workers that wire products together (Workers AI, D1, R2, Durable Objects, Browser Rendering, Access, Email, and more), often without a traditional backend.
What You'll Find Here
Each experiment is:
- Product-focused - Maps to one Cloudflare product or platform capability
- Small and focused - Single responsibility, easy to copy
- Independently deployable - Every experiment has its own deploy button
- Easy to understand - Clear code structure with TypeScript
- Fast to run - Designed to execute in under 60 seconds
- Click-to-deploy - One-click deployment (usually to Cloudflare Workers)
Quick Start
Deploy your first experiment in minutes
Philosophy
Learn why this project exists
Self-Hosted
SaaS replacements you run in your own Cloudflare account
What's New
New experiments and docs updates
Browse Experiments
Every experiment, grouped by Cloudflare capability
Contributing
Add your own experiments
Platform Capabilities
Every experiment demonstrates practical capabilities of the Cloudflare platform:
Workers AI
Summarization, translation, sentiment, embeddings, image generation, and AI Gateway
Browser Rendering
Screenshots, PDF export, readability extraction, and browser automation
Edge Networking
DNS lookup, propagation checks, uptime monitoring, CORS testing, and geolocation
HTMLRewriter
Web scraping, social preview inspection, parsing, and HTML transformation
D1, KV & Vectorize
Edge databases, mock APIs, key-value storage, and semantic search
R2 & Stateful Workers
Object storage, change tracking, Durable Objects, Queues, and Cron Triggers
Experiment Categories
Every experiment, grouped the same way as the sidebar. Each page has an example request, a sample response, and a Deploy button.
AI & Machine Learning
- AI Website Summary - Summarize any webpage using Workers AI on the edge
- AI Website Tag Generator - Generate topic tags for any website using Workers AI on the edge
- GitHub Repo Explainer - Generate AI-powered explanations of any GitHub repository using Workers AI
- AI Bot Visibility Checker - Check if a URL is configured to allow or block AI crawlers like GPTBot, ClaudeBot, and others
- Cloud AI Proxy - Call Workers AI with any model and prompt from a single public endpoint
- Text Translator - Translate text with Workers AI at the edge
- Sentiment Analyzer - Analyze text sentiment with Workers AI at the edge
- Text Similarity - Compare text similarity with Workers AI embeddings at the edge
- AI Image Generator - Generate images from text prompts with Workers AI at the edge
- Speech to Text Transcriber - Transcribe uploaded audio with Workers AI Whisper at the edge
- RAG Mini Search - Grounded Q&A over experiment docs using Vectorize retrieval and Workers AI
- AI Gateway Dashboard - Route Workers AI through AI Gateway and surface cache and latency metadata
- Chat Agent - Durable AI chat agent with SQLite-backed Durable Objects and optional Workers AI
- AI Search Demo - Query Cloudflare AI Search (managed RAG) from a Worker
- AI Batch Infer - Workers AI async batch embeddings with queueRequest and poll
- MCP Tools Server - Remote MCP server on Workers with the Agents SDK McpAgent, exposing DNS, HTTP headers, uptime, and hashing tools to AI clients
- Receipt Parser - Parse receipt and invoice PDFs or photos into structured JSON or CSV with Workers AI Markdown Conversion and JSON mode
- Article to Audio - Listen to any article: HTMLRewriter extracts the text, Workers AI Deepgram Aura-2 reads it aloud as MP3, and R2 caches the result
- Natural Language Calendar - Turn plain English into a calendar invite: Workers AI JSON mode extracts the event, the Worker returns an .ics file plus Google and Outlook links
- Newsletter Digest - Forward newsletters to an Email Routing address and get one Workers AI-summarized digest email per day, stored in D1
Web Scraping & Parsing
- Website Metadata Extractor - Extract metadata from any webpage including title, description, Open Graph tags, and canonical URL
- Website to API - Turn any webpage into structured JSON with title, headings, links, and images
- Website to llms.txt - Convert any webpage into llms.txt format for LLM consumption
- Website DevTools Inspector - Inspect any website like browser DevTools - analyze headers, cookies, scripts, assets, and metadata
- Dependency Analyzer - Analyze all external resources and dependencies loaded by a webpage
- HTML Rewriter - Extract HTML stats and transform pages with HTMLRewriter at the edge
- Social Preview Inspector - Preview Twitter/X Cards, Open Graph unfurls, and Google snippets side by side with HTMLRewriter
- Robots Sitemap Inspector - Parse robots.txt and linked sitemaps for any URL from the edge
- RSS / Atom Feed Parser - Parse RSS or Atom feeds into normalized JSON from the edge
- JSON-LD Extractor - Extract Schema.org JSON-LD structured data from any webpage at the edge
- HTML to Markdown - Convert any webpage HTML into clean Markdown from the edge
Browser Rendering
- Screenshot API - Capture screenshots of any website from the edge using Cloudflare Browser Rendering
- PDF API - Generate PDF documents from any webpage using Cloudflare Browser Rendering
- Page Metrics - Collect Puppeteer page load metrics using Cloudflare Browser Rendering
- Rendered Text - Extract JavaScript-rendered visible text using Cloudflare Browser Rendering
- Browser Links - Extract links from JavaScript-rendered pages using Browser Rendering
- Browser CDP Inspect - Browser Rendering inspection - title, cookies, and performance via Puppeteer
- Readability Extractor - Extract clean article content from URLs using Browser Rendering and readability heuristics
- Browser Markdown Scrape - URL to Markdown and CSS scrape via Browser Rendering quickAction
- Accessibility Auditor - Run axe-core WCAG 2.1 AA audits with Browser Rendering and suggest alt text for unlabeled images with a Workers AI vision model
- Privacy Tracker Scanner - Load a page with Browser Rendering without accepting consent and report third-party trackers, cookies, and a privacy verdict
Network & Monitoring
- Is It Down? - Check if a website is reachable from Cloudflare's edge network
- URL DNS Lookup - Get DNS records for the hostname of any URL using Cloudflare's DNS over HTTPS
- Email Auth Checker - Analyze SPF, DMARC, and DKIM email authentication records via Cloudflare DoH
- Edge Redirect Simulator - Show redirect chains for any URL from Cloudflare's edge-each hop and status code
- Where Am I? - Get request metadata from Cloudflare's edge including geolocation, colo, and more
- Response Headers - Inspect HTTP response headers for any URL from the edge
- Security Headers Grader - Grade HTTP security headers (HSTS, CSP, XFO, and more) for any URL from the edge
- SSL Certificate Inspector - Inspect TLS certificate metadata for a domain using Certificate Transparency and HTTPS probes
- Multi-PoP Latency Map - Measure fetch latency and report the Cloudflare colo that served the Worker invocation
- DNS Propagation Checker - Compare DNS answers from Cloudflare, Google, and Quad9 resolvers in parallel via DoH
- Website Change Tracker - Scheduled Browser Rendering snapshots with R2 storage and D1 diff history
- Uptime Monitor Alerts - Persistent URL monitors with D1 history, cron checks, and email alerts on downtime
- CORS Preflight Tester - Simulate browser CORS preflight OPTIONS requests and analyze response headers
- Broken Link Checker - Extract links from a page and report HTTP status codes from the edge
- Smart Placement Probe - Demonstrate Workers Smart Placement by probing origin latency from the colo
- Domain Expiry Reminder - Track domain registration (RDAP) and TLS certificate (CT logs) expiry in D1, with daily cron email reminders at 30, 7, and 1 days left
Edge Platform
- Edge Cache - Fetch URLs with the Workers Cache API at the edge
- Crypto Hash - Compute SHA digests with the Web Crypto API at the edge
- WebSocket Echo - WebSocket echo server running on Cloudflare Workers
- Image Resizer - Resize remote images with Cloudflare Image Resizing at the edge
- Image Converter - Convert, resize, and watermark images to WebP, AVIF, JPEG, or PNG with the Cloudflare Images binding, stripping GPS metadata
- Turnstile Verify - Verify Cloudflare Turnstile tokens via the siteverify API
- JWT Inspector - Decode, verify, and issue JWTs for experimentation using Web Crypto
- Access JWT Validator - Verify Cloudflare Zero Trust Access JWTs in a Worker with jose, the team JWKS, and a reusable Hono middleware
- Rate Limiter Demo - Native Workers Rate Limiting binding with 429 responses and usage visualization
- Webhook Signature Verifier - Verify HMAC-SHA256 webhook signatures with timing-safe comparison at the edge
- Flagship Rollout - Evaluate Cloudflare Flagship feature flags at the edge
- Secrets Store Demo - Read account-scoped secrets from Cloudflare Secrets Store
- Tail Logger - Tail Worker that stores recent traces from another Worker in KV
- WebRTC Relay - Issue Cloudflare Realtime TURN credentials for WebRTC (demo mode without secrets)
- Stream Video Demo - Create Stream direct upload URLs and signed playback tokens
- Static Assets SPA - Workers Static Assets with ASSETS binding and run_worker_first
- Static Form Backend - Contact-form backend for static sites with Turnstile, honeypot, native rate limiting, D1 storage, and email notifications
Compute & Isolation
- Dynamic Worker Runner - Execute untrusted JavaScript via Dynamic Workers with no network access
- Container Echo - Echo a message via Cloudflare Containers backed by a Durable Object
- Code Sandbox - Run a JavaScript snippet in an isolated Sandbox SDK container
- User Script Dispatcher - Workers for Platforms style dispatch via DispatchNamespace or KV handlers
Storage & Data
- R2 Storage API - Upload and serve files with Cloudflare R2 storage - private and public buckets with list, get, put, and delete operations
- Link Shortener - URL shortener using Cloudflare D1 and KV - shorten links and redirect with edge caching
- D1 SQL Playground - Read-only SQL playground over a seeded D1 database with safe SELECT validation
- KV Notes - Simple note storage with Workers KV at the edge
- Vectorize Search - Semantic search with Workers AI embeddings and Vectorize at the edge
- Presigned R2 Upload - Generate presigned PUT URLs for direct browser-to-R2 uploads with aws4fetch
- API Mock Server - Define mock HTTP endpoints stored in Workers KV and serve them on demand
- Hyperdrive SQL Demo - Query PostgreSQL through Cloudflare Hyperdrive connection pooling from a Worker
- Event Pipeline - Ingest events into Cloudflare Pipelines (stream to R2/Iceberg)
- Artifact Workspace - Store versioned filesystem artifacts (Artifacts-style workspace on R2)
- R2 SQL Query - Query Apache Iceberg tables via the R2 SQL HTTP API
Stateful & Async
- Durable Counter - Reference implementation for Durable Objects - a globally consistent counter with persistent edge state
- DO SQLite Notes - Per-user notes stored in SQLite-backed Durable Objects via sql.exec
- Cron Heartbeat - Reference implementation for Cron Triggers - scheduled tasks with run metadata stored in KV
- Task Queue - Reference implementation for Queues - enqueue tasks over HTTP and process them asynchronously
- Analytics Engine - Write custom events to Workers Analytics Engine at the edge
- Workflows Pipeline Demo - Durable fetch → AI summarize → R2 pipeline using Cloudflare Workflows with step.do and step.sleep
- Live Cursor Tracker - Real-time shared cursor positions over WebSocket using Durable Objects and the Hibernation API
- Queue Job Visualizer - Cloudflare Queues producer/consumer with KV-backed job status and simulated retries
- DO Alarm Scheduler - Schedule one-off reminders with the Durable Object Alarm API and poll for fired status
- Webhook Relay Inspector - Capture inbound HTTP webhooks in a Durable Object session for debugging and replay
- Email Worker Inbox - Receive inbound emails with Email Workers, store them in KV, and inspect over HTTP
- Transactional Email - Send transactional email via the Cloudflare Email Service binding
- One-Time Secret - Share a secret via a self-destructing link: AES-GCM with Web Crypto, ciphertext in a per-secret Durable Object, alarm-based expiry
Why This Project Exists
Most Cloudflare tutorials show very simple examples (Hello World, basic KV counters, simple fetch). This repository focuses instead on real tools developers would actually want to use.
Each experiment is production-ready and demonstrates a complete use case that you can deploy, customize, and learn from.
Read more about the philosophy
Learn about the design principles and goals behind this project
Key Features
Independent Deployments
Every experiment includes a Cloudflare Deploy Button - deploy a single experiment without touching the others
Stateless First
Many experiments use edge compute, fetch, and HTML parsing - no persistent storage required
Single Responsibility
Each experiment demonstrates one specific Cloudflare capability
Edge-First Architecture
Getting Started
Ready to explore? Start with the Quick Start guide to deploy your first experiment, or browse the experiments by category using the sidebar.
Use search with tags like ai, browser, network, or binding names like d1 and r2 to filter experiments quickly.
All experiments are open source and licensed under MIT. Fork, customize, and deploy them for your own use cases.