Building real software with Claude Code
A from-scratch setup guide for people who have never coded. You don't need any background. You need an afternoon, a laptop, and a willingness to ask questions. This is the exact setup I use.
The big idea
Claude Code is an AI that writes, runs, and fixes software on your laptop while you describe what you want in plain English. Your job isn't typing code. Your job is to know the business, explain the problem clearly, and check that the result actually works. If you run a business, you already do that every day.
This is the same setup I use for everything on this site: the guest app, the weekly reports, the court maintenance app. Every piece below is something I use every week.
You
describe what you want
In football terms: The head coach. You know the game, call the play, and judge whether it worked.
Claude Code
writes and tests the code on your laptop
In football terms: The coordinator who also runs the plays. You describe the play, it draws it up and executes.
GitHub
stores every version, so nothing is lost
In football terms: The game film. Every play ever run is saved, so you can always rewind.
Vercel
puts the app on the internet at a real URL
In football terms: The stadium. Where the game actually happens and people show up.
Firebase
sign-in, database, photo storage
In football terms: The front office. The roster (who gets in), the stat book (your data), and the equipment room (files).
Once it's set up, a change goes from your idea to live on your phone in about 10 minutes.
What it costs
| Service | What it's for | Cost |
|---|---|---|
| Claude Pro | Claude Code itself. Start here and upgrade only if you keep hitting usage limits. | $20/mo (Max is $100/mo) |
| GitHub | Stores your code and its full history. | Free |
| Vercel | Hosts the app. The free Hobby plan only covers personal, non-commercial use, so move a business app to Pro once real customers depend on it. | Free to build, $20/mo for Pro |
| Firebase | Sign-in, database, file storage. Uploading photos needs the pay-as-you-go "Blaze" plan, but at a small business's volume the bill is usually $0 to $2 a month. Set a $10 budget alert. | About $0 to $2/mo |
Written for a Mac. Windows works too; the differences are noted where they matter.
Part 0
Plain-English glossary
You'll hear these words constantly. You don't need to master them, just recognize them.
| Term | What it actually means |
|---|---|
| Terminal | A text window where you type commands to your computer. On a Mac it's the app called "Terminal." You'll only use it during setup; after that, Claude runs commands for you. |
| Repository ("repo") | One project's folder of code, tracked by Git. Each app you build gets its own. |
| Git / commit | Git is the save system for code. A commit is a saved snapshot with a short note ("Add order status filter"). You can always go back to any commit. |
| GitHub | The website where your repos live online. Think of it as Google Drive for code. |
| Branch | A safe copy of the code where a change is built without touching the live version. Claude Code creates one for each task automatically. |
| Pull request (PR) | A proposal to merge a branch into the main code. You look it over, test it, and click Merge. This is your approval step. |
| Deploy | Putting the latest code on the internet. Vercel does this automatically every time you merge a PR. |
| Preview link | For every PR, Vercel builds a private test version at its own URL. You click around in it on your phone before you merge. |
| Next.js | The framework (toolkit) the apps are built with. Claude knows it extremely well, which is why we use it. |
| Firebase | Google's back-end service. Three parts matter: Authentication (sign in with Google), Firestore (the database), and Storage (photos and files). |
| Security rules | Firebase's bouncer. These rules decide who can read or write which data. Getting them right is what keeps strangers out of your customer list. |
| Environment variables | Settings and secret keys that live outside the code (in a file called .env.local on your laptop, and in Vercel's settings online). They never get committed to GitHub. |
| CLAUDE.md | A short note in each repo that tells Claude the house rules for that project ("we use Firebase," "always make it work on phones"). Claude reads it at the start of every session. |
| PWA | Progressive Web App: a website you can "Add to Home Screen" so it looks and behaves like a phone app, including working without signal. |
The most useful habit
Part 1 · About 45 minutes
Create the accounts
Decide this first: who owns what
- Don't build on a school or work email. If that account goes away, the projects go with it. Your personal accounts (Claude, GitHub) are yours and travel with you.
- Anything built for a business should be owned by the business. Give it its own Google account for Firebase and a free GitHub "organization" (named after the company) that you're a member of, not the sole owner. Then whoever comes after you inherits a working system, not a mystery.
- 1Claude. Go to
claude.ai, sign up with your personal email, and subscribe to Pro under Settings → Billing. Claude Code is included. - 2GitHub. Go to
github.comand sign up with your personal email. Pick a professional username (it shows up on everything you build). Turn on two-factor authentication in Settings → Password and authentication. - 3A Google account for the project. If this is for a business, create or use the business's Google account. If it's for you, your personal one is fine.
- 4Firebase. Sign in at
console.firebase.google.comwith that Google account. You'll create the actual project later, with Claude walking you through it. For now, just confirm you can get in. - 5Vercel. Go to
vercel.comand choose "Continue with GitHub." This links the two, which is what makes deploys automatic.
Passwords
Use a password manager (Apple Passwords on a Mac or iPhone, or 1Password) and turn on two-factor authentication wherever it's offered, especially for GitHub and the Google accounts. These accounts will end up holding real customer information.
Part 2 · About 45 minutes
Set up your laptop
Open the Terminal app (press ⌘ Space, type "Terminal," press Return). Copy each block below, paste it into Terminal, and press Return. Lines starting with # are notes, not commands. Wait for each one to finish before running the next.
1. Homebrew (an installer for developer tools)
# Asks for your Mac password. Typing it shows nothing on screen; that's normal./bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"# When it finishes, it prints 2 or 3 "Next steps" commands. Run those too.
2. Git, Node.js, and the GitHub command line
brew install git node ghnpm install -g firebase-tools
3. Introduce yourself to Git, then log in to GitHub and Firebase
git config --global user.name "Your Name"# the email on your GitHub accountgit config --global user.email "you@youremail.com"# choose GitHub.com, HTTPS, Yes, Login with a web browsergh auth login# opens a browser; sign in with the Google account you chose for the projectfirebase login
4. A home for your projects
mkdir -p ~/github5. The Claude desktop app
- 1Download the app from
claude.ai/download, drag it into Applications, open it, and sign in. - 2Click the Code tab at the top. This is Claude Code. It's where you'll spend your time.
- 3When it asks for a folder, choose
githubin your home folder. Later, each project gets its own folder in there.
Paste this into Claude Code
Check that git, node, gh, and firebase are installed and that I'm logged in to GitHub and Firebase. Tell me if anything is missing.
On Windows
winget install GitHub.cli in PowerShell. The Claude desktop app and every step after this are the same.Part 3
How you work with Claude, day to day
Every change, big or small, follows the same five-step loop. Once it feels natural, you can build almost anything.
- 1Start a session. In the Code tab, open the project folder and start a new session. Claude works on its own branch, so the live app is never at risk.
- 2Describe the outcome, not the code. Say who is using it, what they're trying to do, and what "done" looks like. For anything bigger than a small tweak, add "Make a plan first and show it to me before you write code."
- 3Look at it running. Claude starts the app in a browser panel next to the chat and tests it. Click around yourself. If something's off, just say so: "the Save button is too small on my phone."
- 4Open a pull request. Say "Commit this and open a PR." A minute later Vercel posts a preview link on the PR. Open it on your phone and use it like a real user would.
- 5Merge. If you're happy with it, say "merge it" or click Merge on GitHub. Vercel puts it live in about a minute.
Your first session: a "hello world" that goes all the way to the internet
Do this before building anything real. It proves every piece is connected.
Paste this into Claude Code
I've never coded before, so explain each step as you go and tell me exactly what I need to click myself. Create a new Next.js app called my-first-app in ~/github, with Tailwind for styling. Make the home page say "Hello from [your name]" in a color you like. Push it to a new private GitHub repo. Then walk me through connecting it to Vercel so it's live at a real URL.
Claude handles the code and GitHub. You'll do the Vercel part in your browser (vercel.com → Add New → Project → import the repo → Deploy). When the URL works on your phone, the hardest part is behind you.
Habits that make Claude dramatically better
- Give it the real stuff. Drag in photos of paper forms, screenshots, and spreadsheets. A picture of the actual order sheet beats a paragraph describing it.
- One thing at a time. "Add the orders page" works far better than "build the whole app." Small PRs are easy to check and easy to undo.
- Keep CLAUDE.md short. Ask Claude to add a rule whenever you notice yourself repeating something ("always design for a phone first"). A dozen lines is plenty. Overloaded instructions make it worse, not better.
- Ask before you approve. When Claude asks permission to run a command you don't understand, ask what it does first. Anything that deletes data or touches the live database deserves a second look.
- Work on your own laptop. Claude can also run sessions in the cloud, but I always run mine locally in the desktop app. I can see the app in a browser panel next to the chat, test on the iPhone simulator, and I'm never waiting on a push to see a change. It's just faster.
- Stuck for more than 10 minutes? Start a fresh session, describe the goal again, and paste in the error. Or email me.
Part 4
Pick your first real project
The best first project is small, yours, and already annoying. Thirty minutes on paper before you prompt saves hours later. Answer these three:
- 1What do you track on paper or in a spreadsheet today? Orders, jobs, leads, inventory, inspections, hours. Pick one.
- 2Who else touches it? Where does it live now (group chat, spreadsheet, email, a notebook in the truck)? Gather screenshots and photos of the real thing.
- 3What would you check on your phone? The one screen you'd open on a Tuesday afternoon. That's your dashboard.
Your first real prompt
Paste this into Claude Code
I run [your business] and I'm new to coding, so explain what you're doing and walk me through anything I have to do myself. Make a plan first.
I want a private app in this repo using Next.js, Firebase (Google sign-in and Firestore), and Vercel. Only emails on an approved list can sign in. Version 1: [the one thing you track today, in a sentence or two]. It has to work well on a phone. Here are screenshots of how we track it now: [drag them in].
Write Firestore security rules so only signed-in, approved users can read or write anything, and show me how you tested them. Then set up CLAUDE.md with the house rules for this project.
Expect this to take several sessions and several PRs. That's normal and healthy. Once version 1 is live, have two people use it for a week and fix whatever annoys them.
Part 5
Rules of the road
Never
- Paste passwords or secret keys into the chat. Let Claude tell you where they go (
.env.localand Vercel settings). - Make a repo public unless you mean to. Keep business apps private.
- Leave Firebase in "test mode." It lets anyone on the internet read your data.
- Approve a command that deletes data unless you understand exactly what it removes.
Always
- Test the preview link on your phone before merging.
- Keep PRs small. One feature, one PR.
- Remember that anything merged can be undone. Git keeps every version, so don't be afraid to try things.
- Set a Firebase budget alert, and check the bill your first month.
The first 30 days
| When | Goal | Done when |
|---|---|---|
| Week 1 | Accounts, laptop setup, hello world | Your page is live at a Vercel URL and opens on your phone |
| Week 2 | Sign-in and the first screen of your real project | You can sign in with Google and add a real record; a stranger can't |
| Week 3 | The rest of version 1, plus a dashboard | Your last 10 real records are in it |
| Week 4 | Pilot | Two other people use it for a week and you've fixed what annoyed them |
Part 6
Setup checklist
- Claude Pro, on your personal email
- GitHub account with two-factor authentication
- A Google account for the project
- Vercel, signed up with GitHub
- Homebrew, git, node, gh, firebase-tools installed
- gh auth login and firebase login done
- Claude desktop app, Code tab opened on ~/github
- "Check my setup" prompt passes
- Hello world is live on your phone
Stuck? Proud of something?
Email me the link. I'll take a look and ask questions. Getting unstuck quickly is half of what makes this work, and I like seeing what people build.
Written by Chase Beach, October 2026. Print this page for a PDF.