Tooling

Serverless-Only

Workers / Lambda / Functions everywhere. No machines to babysit.

The "I refuse to operate any servers" path. Possible end-to-end in 2026 across multiple providers, with real tradeoffs.

The platforms

Cloudflare-flavored (the "all CF" stack)

  • Cloudflare Workers — V8 isolates; fast cold starts; truly global. The default for new edge-first apps.
  • Cloudflare Pages + Workers — combined static + server.
  • Cloudflare D1 — SQLite at the edge.
  • Cloudflare R2 — S3-compatible, no egress fees.
  • Cloudflare KV / Cache API — fast reads at the edge.
  • Cloudflare Queues / Workflows — async work.
  • Durable Objects — single-instance stateful actors; multiplayer / chat / counters.
  • Vectorize / Workers AI — AI without leaving CF.

AWS-flavored (Lambda + DynamoDB)

  • AWS Lambda — the originator; 1M req/mo free tier.
  • DynamoDB — serverless NoSQL with on-demand pricing.
  • API Gateway / Lambda Function URLs — HTTP entry.
  • EventBridge / SQS / SNS — async pipelines.
  • S3 — object storage.
  • AWS Step Functions — durable workflows.
  • SST — TS-flavored IaC for serverless on AWS.

GCP-flavored

  • Cloud Run — serverless containers (cold-start + autoscale).
  • Cloud Functions — function-as-a-service.
  • Firestore — serverless NoSQL.
  • Cloud Tasks / Pub/Sub — async.
  • Workflows — durable orchestration.

Vercel / Netlify-flavored (frontend-driven)

  • Vercel Functions — Edge + Node serverless.
  • Vercel KV / Postgres / Blob — bundled stores.
  • Netlify Functions / Edge Functions — same shape.
  • Pair with Neon / Supabase / Convex for the DB layer.

Other

  • Deno Deploy — serverless Deno.
  • Bun on Workers patterns — emerging.
  • Modal / Replicate / Beam — serverless GPU compute for AI.

What you give up

  • Long-running processes. Background jobs need workflow engines (Inngest, Trigger, CF Workflows).
  • Disk. Tmpfs at best; persistent data lives in object stores or DBs.
  • WebSockets at scale — Workers Durable Objects help; raw Lambda struggles.
  • Cold starts. Workers are great here; Lambda VPC + Java is not.
  • Egress / data costs — every byte leaving your serverless code can cost money.

What you gain

  • No machines. No SSH, no patches, no apt update.
  • Bursty cost model. Pay for actual usage; idle is free.
  • Global distribution. Workers / Vercel Edge / Lambda@Edge.
  • Compliance — most platforms come with SOC 2 / ISO / HIPAA.

Common stacks

  • All-Cloudflare: Workers + Pages + D1 + R2 + Queues + Durable Objects.
  • Vercel + Neon: Vercel Functions + Neon Postgres + R2 (or Vercel Blob) + Resend.
  • AWS-native: Lambda + DynamoDB + S3 + EventBridge + Step Functions, deployed via SST or CDK.
  • Convex stack: Convex (DB + functions) + Vercel for frontend + Resend.

When serverless is wrong

  • Heavy CPU / sustained workloads (training models, big batch jobs).
  • Apps with many long-lived WebSockets and real session state (Durable Objects help).
  • Strict latency to a non-CDN-cached database.
  • Predictable steady traffic where reserved instances dominate.

Pick this if…

  • Bursty / unpredictable traffic.
  • Side projects, indie SaaS, MVPs.
  • Apps where you'd rather pay AWS than a sysadmin.
  • You want global low-latency without thinking about regions.

Skip if your workloads are CPU-heavy / sustained, if you have predictable steady load, or if your data has compliance constraints that bite serverless data residency assumptions.

On this page