If you're building with an AI coding assistant like Claude Code — or you just live in the terminal by choice — "deploying" shouldn't mean learning a new dashboard. Every option below can be driven from the command line, several of them entirely by an agent with no human clicking a single button.
The quick comparison
| Platform | Best for | How you deploy | Database? | Pricing |
|---|---|---|---|---|
| AWS | Maximum control, existing AWS shops, enterprise scale | CLI / IaC (Amplify, App Runner, Copilot, Elastic Beanstalk) | RDS (managed, configured separately) | Usage-based; can get complex |
| DigitalOcean | Straightforward servers without AWS's learning curve | doctl CLI, App Platform, or a plain Droplet |
Managed Postgres/MySQL add-on | Flat, predictable monthly rates |
| Vercel + Supabase | Frontend-heavy apps that need a database and auth fast | vercel deploy + supabase db push |
Supabase (managed Postgres, auth, storage) | Generous free tier, then usage-based |
| Cloudish.ai | Letting a coding agent deploy end-to-end, no dashboard at all | A single curl call an agent can run itself |
Bring your own (SQLite/Postgres on an attached volume) | Pay-as-you-go credits, small free grant to start |
Also worth knowing about: Railway, Fly.io, Render, and Netlify — all solid, git-push-to-deploy platforms in the same spirit as Vercel.
AWS — the industry standard, with a learning curve to match
Amazon Web Services is the largest cloud provider, and effectively the "default" choice for serious, long-term infrastructure. The tradeoff is real: AWS gives you almost unlimited flexibility, and almost unlimited ways to configure something wrong. For a simple app, tools like AWS Amplify Hosting or AWS App Runner trim that down to something closer to a normal deploy command.
# AWS Amplify — connect a git repo and deploy a frontend + API
npm install -g @aws-amplify/cli
amplify init
amplify push
# Or, for a containerized app: AWS App Runner from a Dockerfile
aws apprunner create-service --cli-input-json file://apprunner.json
Choose AWS if: you already use AWS elsewhere, you need fine-grained control over infrastructure, or you're planning for significant scale.
DigitalOcean — servers without the enterprise sprawl
DigitalOcean built its reputation on making a real cloud server ("Droplet") as approachable as possible, and its App Platform extends that to a git-push style deploy with a managed database available alongside it — all controllable from the doctl CLI.
# Install the CLI, then deploy straight from a spec file
brew install doctl
doctl auth init
doctl apps create --spec app.yaml
Choose DigitalOcean if: you want predictable flat pricing and real servers, without AWS's sprawling menu of services.
Vercel + Supabase — the popular pairing for AI-assisted apps
This combination has become a default for a reason: Vercel deploys your frontend (and serverless functions) to a global edge network with a single command, while Supabase gives you a managed Postgres database, authentication, and file storage without running a single server yourself. Most "vibe coded" full-stack apps map onto this pair almost directly.
# Deploy the app
npm install -g vercel
vercel deploy --prod
# Stand up the database
npm install -g supabase
supabase init
supabase db push
Choose Vercel + Supabase if: you want the fastest path from "working on localhost" to "live app with a real database," and you're comfortable wiring two platforms together.
Cloudish.ai — built for a coding agent to deploy, not a human to click through
Cloudish is a newer, deliberately different kind of platform: it has no dashboard to click through at all. The entire product is an API designed so that a tool like Claude Code can get a key, build your Dockerfile server-side, and put it online — all inside one conversation, without you touching a browser. It's part of a small but growing wave of "agent-first" infrastructure built for exactly this workflow.
# 1. Get a free API key — no signup required
curl -X POST https://cloudish.ai/api/v1/keys
# 2. Deploy straight from source (a folder with a Dockerfile)
tar --exclude='.env*' --exclude='.git' -czf context.tar.gz .
curl -X POST https://cloudish.ai/api/v1/projects \
-H "Authorization: Bearer $CLOUDISH_API_KEY" \
-F "name=my-app" -F "port=8080" -F "context=@context.tar.gz"
# 3. Get a public URL
curl -X POST https://cloudish.ai/api/v1/projects/YOUR_ALIAS/my-app/subdomain \
-H "Authorization: Bearer $CLOUDISH_API_KEY"
In fact, this exact site — whatislocalhost.com — was deployed this way, live on Cloudish.ai.
Choose Cloudish.ai if: you want your AI coding agent to handle deployment itself, end-to-end, without a dashboard in the loop.
So which one should you actually pick?
- Want a database and the simplest path to a full app? Vercel + Supabase.
- Want full control, or you're already deep in AWS? AWS.
- Want simple, predictable pricing and a real server without AWS's complexity? DigitalOcean.
- Want your coding agent to deploy for you, with zero dashboard clicking? Cloudish.ai.