Onboarding
Cloudflare Intern Lab
A hands-on track through the parts of Cloudflare we use every day. You'll do everything in the Cloudflare dashboard: create resources, add bindings, write Worker code in the dashboard editor, and read logs. Tick tasks off as you go, because your progress is saved to your account.
How to use this lab
- Everything is done in the Cloudflare dashboard. You create resources there, add bindings and variables there, write code in the dashboard's code editor, and read logs there. That way you can always see what you've built.
- Each code task has starter code in
exercises/<module>/src/index.js. Copy it into the Worker's Edit code editor and complete the TODOs. - Tasks are tagged: Dashboard is done in the Cloudflare UI. Code is done in the dashboard code editor. Blue "Wrangler way (optional)" boxes show the terminal equivalent. Skip them unless you're curious.
- Try every task before you open Show solution. Full working code is in
solutions/<module>/. - Finish each module with its self-check quiz. Bring any wrong answers to your mentor.
- The two projects (P1, P2) are real systems built from what you've learned so far. Take your time with them.
Prerequisites, not taught here: basic JavaScript (async/await, fetch, JSON), and SQLite/SQL basics (CREATE TABLE, SELECT, INSERT, UPDATE, DELETE, WHERE, indexes). The D1 module assumes you already know SQL.
Modules
00 · Setup
Account, workers.dev subdomain, a tour of the dashboard and its code editor.
01 · How Workers work
Isolates, the fetch handler, env and ctx, plus logs and observability.
02 · Bindings & domains
Vars, secrets, service bindings, routes vs custom domains.
03 · Workers KV
Create, bind, read, and write KV, with JSON lint and integrity checks.
04 · WebSockets
Upgrade an HTTP connection to a WebSocket using a ticket from a POST.
05 · D1
Migrations, binding, prepared statements, and a CRUD API.
P1 · Project: ticket scan webhook
Gate scanners post scans to a signed webhook. Validate, stop double entry, report per gate.
06 · R2
Upload, replace, and list images, and work with folders (prefixes).
07 · Workers AI + Gateway
Run models, and route calls through AI Gateway for logs, cache, and limits.
P2 · Project: WhatsApp bot
A WhatsApp Cloud API webhook that answers booking questions from D1, with signatures, retries and state.
08 · RAG
"Teach" a model your own data with Vectorize, then with AI Search.
09 · Pages & middleware
Pages projects, Functions, _middleware.js, _headers, previews, and deployment logs.
10 · Capstone
Deploy this guide to Cloudflare, then build a small app that uses everything.
Ground rules
- Use your own free account, not the company account, for every exercise in this lab.
- Never put secrets in code. Add them as Secret variables in the dashboard (Settings → Variables and Secrets).
- Delete what you create when you finish the capstone. The capstone's last task covers cleanup.
- When a command or UI label here doesn't match what you see, the Cloudflare docs win. Tell your mentor so we can update the lab.