Hamilton Ridley Consulting
Hamilton Ridley Consulting
Hamilton Ridley Consulting
Field Notes · Vol. 01
Choosing Your Stack
For New Builders · 2026
A short guide

Pick the right four tools, ship the right way.

Every web app you'll ever build comes down to four decisions: where you write the code, where it's stored, where it runs, and where its data lives. This guide lays each lane out side by side, then walks through three real projects to show how the choices shift based on what you're actually building.

Lane 01
Author
Where you write the code
Lane 02
Source
Where the code lives
Lane 03
Host
Where it serves real users
Lane 04
Data
Where your app remembers
§ 01

The four lanes

Lane 01

Author

The tool you sit in front of. Where prompts become code, files get edited, and an AI agent reads logs and runs commands on your behalf.

What changes between optionsHow much do you leave the browser? Browser studios are fastest to start; terminal CLIs give you full control over a real folder on your laptop.
Replit Agent
All-in-one browser studio. Editor + AI + host in one tab.
Cursor / Windsurf
VS Code-style desktop IDE with AI in every panel.
Claude Code (CLI)
Terminal agent. Full repo context, runs real shell commands.
Codex (CLI)
OpenAI's terminal counterpart. Useful as a second opinion.
Lane 02

Source

Where the code itself lives, with full history, branching, and a way for other tools (deployers, CI, AI agents) to read from it.

What changes between optionsNot much. Pick GitHub. The other options exist for niche reasons; for new builders, GitHub is the default and what every other tool plugs into.
GitHub
The default. Free for private repos. Plugs into every host.
GitLab / Bitbucket
Real but rare. Skip unless an employer requires it.
Lane 03

Host

Where the app actually serves real users — the URL someone types in, the server responding to clicks, the SSL certificate keeping it secure.

What changes between optionsHow much you want to think about servers. Vercel/Netlify hide everything; Linode/Hetzner give you a raw box. The right answer depends on what your app needs to do, not how big it is.
Vercel / Netlify
Push to GitHub, get a URL. Best for Next.js, React, static sites.
Railway / Render
Always-on servers. Good for Python, long jobs, websockets.
Replit Deploy
Stay in the same tab. Quick demos, internal tools, MVPs.
Linode / Hetzner
Full VPS. Most control, lowest cost, most setup.
Lane 04

Data

Where your app remembers things between visits. Database, user accounts, file storage — the parts that make an app feel real instead of a brochure.

What changes between optionsHow much comes pre-assembled. Supabase and Firebase bundle DB + auth + files; Neon/Turso are just the database. Bundles get you to "it works" faster; pieces give you flexibility later.
Supabase
Postgres + auth + files. Open source. The default.
Firebase
Google's bundle. Mature, NoSQL, great mobile SDKs.
Neon / Turso
Just the database. Pair with your own auth (Clerk, Auth.js).
SQLite (file)
A database that's just a file. Wildly fast for small apps.
Tab. 01 — CLI agent vs. Replit at a glance
QuestionCLI agent (Claude Code / Codex)Replit Agent
Where does the code live?On your laptop, in a folder you own. Pushed to GitHub.On Replit's servers, inside a "Repl." Exportable, but theirs.
What runs the app?Anywhere you want — Vercel, Linode, your own box.Replit's hosting, by default.
How fast to "live URL"?Slower the first time. Faster forever after.Seconds. Hard to beat for a prototype.
Who fixes it at 2am?You, but with full access to logs and infra.You, but limited to what Replit exposes.
Best for…Anything a paying client depends on.Demos, internal tools, MVPs, learning.
§ 02

Three real projects, three different stacks

Project A

A landing page + lead form for a local contractor

One page. Form submissions email the owner. He'll use it for 3 months to validate before deciding whether to invest more. No team, no users-with-logins, no payments.

Optimize for speed
01 · Author
Replit Agent
Browser-only, zero setup, live preview. "Working tomorrow" matters more than ergonomics.
02 · Source
GitHub (mirror)
Replit auto-syncs. Backup is non-negotiable even on throwaway projects.
03 · Host
Replit Deploy
Already there. Free tier is fine for ~hundreds of visitors. Don't add tools you don't need.
04 · Data
Resend (email)
No database needed. The form just emails the owner. The simplest "data layer" is no database.
Project B

A multi-user CRM for a small business

Eight team members log in daily. Tracks leads, jobs, customer history. Will run for years. Real revenue depends on it staying up.

Optimize for reliability
01 · Author
Claude Code or Cursor
Real review surface, real diffs, real Git workflow. You'll be reading this code in two years.
02 · Source
GitHub
Branches, PRs, history, Dependabot. Anything a paying client touches needs proper source control.
03 · Host
Vercel
Auto-deploys, preview URLs per branch, instant rollback. The "boring professional" answer.
04 · Data
Supabase
Postgres + auth + RLS. Free up to ~50K users. Scales without forcing a rewrite later.
Project C

A nightly automation that pulls data from four APIs and sends a report

Runs unattended every night for ~25 minutes. Stores history. One operator views the dashboard occasionally. Budget is "as cheap as possible."

Optimize for control
01 · Author
Claude Code
Heavy scripting, lots of file work, frequent log-reading. Terminal CLIs shine on this kind of project.
02 · Source
GitHub
Same as always — backup, history, deploy hook. Even hobby projects deserve a repo.
03 · Host
Linode VPS + Docker
Vercel times out at 5 minutes. Long jobs need a real server. One $10/mo box hosts a dozen of these.
04 · Data
SQLite (on the box)
One operator, no concurrency. A managed database here is solving a problem you don't have.
SharePostLinkedIn
Field Notes Subscribers

Vol. 02 walks the boring stuff that saves the project.

Subscribe to get future volumes — security & redundancy, prototype-to-production, working with AI agents, and when to call for help. One email per release.

Hamilton Ridley Consulting · 2026
daniel.kemp@hamiltonridley.com