1---
2title: Cloudflare
3description: Build and deploy full applications on Cloudflare with Alchemy — one Worker runtime plus resources like Durable Objects, D1, R2, Queues, and Hyperdrive, wired together by typed bindings.
4---
5
6An alchemy app on Cloudflare is one **Worker** runtime plus the
7resources it talks to — databases, object storage, queues,
8stateful objects — all declared in the same TypeScript program and
9wired together by typed bindings. Deploy the whole thing with
10`bun alchemy deploy`; Alchemy figures out what changed.
11
12New here? [Set up your account](/cloudflare/setup), then start the
13[tutorial](/cloudflare/tutorial/part-1).
14
15## Compute
16
17- [Workers](/cloudflare/compute/workers) — the compute runtime; every app has
18 at least one.
19- [Durable Objects](/cloudflare/compute/durable-objects) — globally-unique
20 stateful instances with transactional storage and typed RPC.
21- [Containers](/cloudflare/compute/containers) — long-lived processes and
22 arbitrary runtimes, paired with a Durable Object for typed RPC.
23- [Workflows](/cloudflare/compute/workflows) — durable multi-step jobs with
24 checkpointed, replayable steps.
25
26## Frontend
27
28- [Vite](/cloudflare/frontend/vite) — deploy any pure-Vite app
29 (SPAs, TanStack Start, React Router, SolidStart) as a Worker with
30 assets.
31- [Static sites](/cloudflare/frontend/static-site) — any build
32 command's static output, including frameworks Vite doesn't cover
33 yet.
34
35## Data
36
37- [D1](/cloudflare/data/d1) — serverless SQLite with migrations managed as
38 part of the deploy.
39- [KV](/cloudflare/data/kv) — edge key-value storage for config, sessions,
40 and cached lookups.
41- [R2](/cloudflare/data/r2) — object storage with read/write-scoped
42 bindings.
43- [Hyperdrive](/cloudflare/data/hyperdrive) — edge connection pooling for
44 external Postgres and MySQL.
45
46## Messaging
47
48- [Queues](/cloudflare/messaging/queues) — at-least-once message delivery
49 between Workers.
50
51## Networking
52
53- [Domains & DNS](/cloudflare/networking/domains) — zones, DNS records, and zone
54 settings as resources; adopt the domains you already own.
55
56## Email
57
58- [Email](/cloudflare/email) — route inbound mail on a zone you own
59 and send from Workers.
60
61## Security & secrets
62
63- [Secrets & env](/cloudflare/security/secrets-env) — bind `.env` values and
64 secrets into your Workers.
65- [Protect a Worker with Access](/cloudflare/security/access) — put a login
66 wall in front of a Worker and read the authenticated identity from
67 `ctx.access`.
68
69## What are you building?
70
71| App shape | Stack |
72| --- | --- |
73| HTTP API | [Worker](/cloudflare/compute/workers) + [D1](/cloudflare/data/d1) — see [Effect HTTP API](/cloudflare/apis/effect-http-api) |
74| Call one Worker from another (internal RPC) | [Worker](/cloudflare/compute/workers) — see [Schemaless RPC](/cloudflare/compute/workers#call-another-worker) and the [concept](/apis/schemaless) |
75| Typed API for external clients | [Effect RPC](/cloudflare/apis/effect-rpc) for Effect clients, [Effect HTTP API](/cloudflare/apis/effect-http-api) for plain HTTP |
76| Real-time / WebSockets | [Durable Objects](/cloudflare/compute/durable-objects) — see [Accept WebSockets](/cloudflare/compute/hibernatable-websockets) |
77| Full-stack app | [Worker](/cloudflare/compute/workers) + a React SPA — see [Add a React SPA](/cloudflare/frontend/vite-spa) or [Frontend frameworks](/cloudflare/frontend/frontends) |
78| Background jobs | [Queues](/cloudflare/messaging/queues) |
79| Postgres-backed API | [Hyperdrive](/cloudflare/data/hyperdrive) + [Drizzle](/cloudflare/data/drizzle) |
80| Durable multi-step jobs | [Workflows](/cloudflare/compute/workflows) |
81| AI apps | [AI Gateway](/cloudflare/ai/ai-gateway), [Effect AI](/cloudflare/ai/effect-ai), [AI Search](/cloudflare/ai/ai-search) |
82| App on your own domain | [Domains & DNS](/cloudflare/networking/domains) — see [Custom domains & routes](/cloudflare/networking/custom-domains) |
83| Production observability | [Ship Worker telemetry to Axiom](/cloudflare/observability/axiom-observability) |
84
85For frontends, alchemy is Workers-first: Pages resources exist, but
86static assets served from a [Worker](/cloudflare/compute/workers) is the
87recommended path.
88
89## Where next
90
91- [Setup](/cloudflare/setup) — install alchemy and connect your
92 Cloudflare account.
93- [Tutorial](/cloudflare/tutorial/part-1) — from empty directory to a
94 deployed Worker with tests, stages, and CI.
95- [Custom domains & routes](/cloudflare/networking/custom-domains) — put
96 your Worker on a domain you own.
97- [Ship Worker telemetry to Axiom](/cloudflare/observability/axiom-observability) —
98 datasets, ingest tokens, and monitors in the same Stack as the Worker.
99- [API reference](/providers) — every Cloudflare resource and binding.
100
101## Everything else
102
103The blocks above are what most apps are built from, but coverage goes
104much further: the zero-trust and zone-security long tail — roughly 60
105more services, produced by the resource factory — ships as
106reference-only documentation in the [API reference](/providers).