Developer pack
Claude Skill
Hosting Stack Selector
Picks a host, database, and region from your project's actual shape — and names what you'd have to migrate later.
What it does
Turns "what is this project" (static site / full-stack + DB / background workers / AI inference) into a concrete hosting recommendation — Vercel, Railway, Cloudflare, Supabase, Neon — matched to the runtime, data, and traffic you actually have. Names the lock-in and the migration cost of each choice up front, so the cheap default now doesn't become an expensive move later.
When to use
- ✓You built something and need to decide where it actually runs
- ✓Choosing a database + host for a new project and want the trade-offs, not a trend
- ✓Weighing a no-code builder's hosting vs moving to your own
When not to use
- ✗You already chose a host and just need to deploy — that's a deploy walkthrough
- ✗Enterprise/regulated infra with procurement constraints this doesn't model
Install
Download the .zip, then unzip into your Claude skills folder.
mkdir -p ~/.claude/skills
unzip ~/Downloads/hosting-stack-selector.zip -d ~/.claude/skills/
# Restart Claude Code session.
# Skill is now available — Claude will use it when relevant.SKILL.md
SKILL.md
---
name: hosting-stack-selector
description: Use when choosing where to host an app and which database to use. Triggers on "where should I host", "which host", "Vercel vs Railway", "what database", "hosting stack", "deploy options", "self-host vs managed".
---
# Hosting Stack Selector
Pick the host from the project's shape, not from what's trending. The wrong host shows up later as a painful migration, so name the lock-in now.
## First, classify the project
1. **What runs it?** Static files / a JS framework (Next, Vite) / a long-running server (Express, FastAPI) / background workers / GPU inference.
2. **What's the data?** None / a SQL database / files & blobs / a vector store.
3. **What's the traffic shape?** Spiky and low (hobby) / steady / bursty with cold-start sensitivity.
## Match to a host
- **Static or Next.js, DB managed elsewhere** → Vercel or Cloudflare Pages. Cheap, fast, zero servers. DB lives on Supabase / Neon.
- **Full-stack with a long-running server or workers** → Railway (any language, simple Postgres + cron in one place) or a container host. Vercel functions are stateless and time-boxed — not for long jobs.
- **SQL database** → Supabase (Postgres + auth + storage) or Neon (serverless Postgres, branchable). Avoid putting a DB on the app host's ephemeral disk.
- **GPU / heavy inference** → a dedicated inference host, not your web host.
## Name the lock-in (do this before recommending)
For each option, state what you'd have to migrate later and how hard it is:
- Managed-platform features you'd become dependent on (their auth, their edge functions, their proprietary KV)
- Data egress cost and export path
- Whether the runtime is portable (a standard container moves; a platform-specific function doesn't)
A good recommendation comes with "if you outgrow this, here's the exit, and it costs roughly X."
## Region & cost
- Put the database near the compute (cross-region DB calls dominate latency).
- Start on the free/hobby tier; note the specific metric that will push you to paid (bandwidth, compute-hours, DB rows), so the bill isn't a surprise.
## Anti-patterns
- Choosing the trendy host, then discovering it can't run your background jobs
- A database on the app host's ephemeral disk (data vanishes on redeploy)
- Cross-region compute↔DB by accident
- Ignoring lock-in until the migration is forced and expensive
Example prompts
Once installed, try these prompts in Claude:
- I have a Next.js app with a Postgres database and one background job. Where should it run, and what would I regret in a year?
- Static marketing site + a contact form. Cheapest reliable host, and what locks me in?
Related prompts
Don't want to install a skill? These prompts in /prompts cover similar ground for one-shot use: