How to build an app with Claude Code
Describe what you want, in a directory, and Claude Code writes it. That part genuinely works and it is not the hard part. The hard part arrives immediately afterwards: what you have is source code on your own machine, and an app other people can use needs an address, a way to tell who is signing in, and somewhere to keep the data. Claude Code does not provide those and does not claim to. So the real question is not how to build an app with Claude Code, it is what you attach to it so the thing you built can be used by anybody other than you.
Last checked against Anthropic's documentation on . Claude changes often. If something here no longer matches the help centre, the help centre is right.
Building something other people can actually open
-
Start in an empty directory
Claude Code works on a codebase, so give it one. An empty folder is a fine codebase. Run claude in it and describe the app in a sentence or two rather than a specification.
-
Get it running locally first
Ask for the smallest version that starts, then look at it. A local run is the fastest possible feedback and it costs nothing. Do not add features to something you have not yet seen work.
-
Decide who is going to use it
This is the fork in the road, and answering it late is what causes rewrites. Only you: stop here, a local script is enough. Other people: you now need hosting, accounts and a database, and it is much cheaper to add those before the app has grown around their absence.
-
Attach a host through MCP
Anthropic documents MCP as the supported way to give Claude Code a capability it does not have natively. Connect one and the same agent that wrote the app can also deploy it and keep working on its live data.
-
Give the link to one real person
Not a group. One person, and watch where they get stuck. Sign-in and permissions are where apps built this way break, and one confused person finds more than any amount of self-testing.
What Claude Code actually does, and where it stops
Worth being precise about, because most of the frustration around this question comes from expecting a different product. Anthropic's own first line:
Claude Code is an agentic coding tool that reads your codebase, edits files, runs commands, and integrates with your development tools.
Claude Code overview, Claude Code documentation
Every verb in that sentence is about a codebase on a machine somebody is sitting at. The same is true of where it runs:
Claude Code runs on several surfaces: the terminal, IDE extensions, a desktop app, and the web.
Claude Code overview, Claude Code documentation
A terminal, an IDE, a desktop app and a browser tab are four places a developer sits. None of them is a place an app lives for other people. That is a scope statement, not a shortcoming. Claude Code is a tool for working on code, it is extremely good at that, and it never advertised itself as a host.
So the honest shape of the problem is: Claude Code closes the writing gap almost entirely, and leaves the running gap exactly where it was.
The four things a built app still needs
These are the same four every time, and none of them is about code quality.
| What is missing | Why the code cannot supply it | What it looks like when you hit it |
|---|---|---|
| An address | The app runs on localhost, which exists only on your machine | You send someone "localhost:3000" and it opens their own computer, or nothing |
| Sign-in | Knowing who someone is requires a server that holds sessions | Everyone is anonymous, so the app cannot show one person their own rows |
| A database that outlives the process | Local files vanish with the container, the laptop or the restart | It worked yesterday and today it is empty |
| Somewhere it keeps running | Your machine sleeps, and it is the only thing serving the app | It is only up when your terminal is open |
Every one of these is a hosting problem rather than a coding problem, which is why asking the agent to try harder does not move any of them.
When you should stop here, honestly
A large share of the things people build with Claude Code should never be deployed at all, and saying otherwise would be selling you something.
- You are the only user. A script, a local tool, a one-off analysis. Running it on your own machine is simpler, faster and free, and adding accounts to it is pure overhead.
- It is a real codebase with a real team. If this is going into a repository with CI, reviewers and a staging environment, use your normal deployment. Claude Code fits into that flow rather than replacing it, and a hosting shortcut would be a step backwards.
- You are learning. The value is in reading what it wrote and understanding it. Deployment adds nothing to that and adds several new things that can go wrong.
- It needs to be an iOS or Android app. Nothing in this guide helps. That is a different toolchain with a different store review at the end of it.
The rest of this page is for the case that is left over, which is a genuinely common one: a small web app, for a handful of specific people, that you do not want to run a server for.
Attaching a host through MCP
MCP is the documented way to give Claude Code something it cannot do on its own:
Claude Code can connect to hundreds of external tools and data sources through the Model Context Protocol (MCP), an open source standard for AI-tool integrations.
Connect Claude Code to tools via MCP, Claude Code documentation
and what a connected server grants:
MCP servers give Claude Code access to your tools, databases, and APIs.
Connect Claude Code to tools via MCP, Claude Code documentation
The property that matters for an app, rather than for a one-off task, is the last one:
Once connected, Claude can read and act on that system directly instead of working from what you paste.
Connect Claude Code to tools via MCP, Claude Code documentation
That is the difference between an agent that hands you a finished project and walks away, and one that can still change the app and its live data next week. Homespun is where the same agent that built the thing can host it. People sign in with their email, so the app can tell who is who and every row remembers who created it; permissions are set per collection, so some people can approve and others can only submit; and the agent keeps read and write access to the collections it is allowed, so it can keep working on the data instead of handing you a page and walking away. It is free today, and there is no paid plan to buy.
In practice this means the loop stops being "build, then deploy, then maintain by hand" and becomes one continuous conversation, because the agent still has the app in reach after it has shipped.
Where the app can end up, compared honestly
Three real destinations, and none of them is right for everybody.
| Stays local | Your own hosting | Homespun | |
|---|---|---|---|
| Other people can open it | No | Yes | Yes |
| Setup work | None | Real: server, domain, TLS, database, deploys | The agent does it |
| Sign-in | None | You build it | Built in, email link or Google |
| Database | A local file | You run one | Shared, per-collection permissions |
| Who can change it later | You, in the code | You, plus a deploy | You or the agent, live |
| Ongoing cost | None | A server bill, monthly | Free today, no paid plan to buy |
| Ceiling | One machine | Whatever you build | 100,000 rows and 100 MB of uploads per app |
| What you give up | Anyone else using it | Your time, permanently | Control of the stack. It is our platform, not your server |
That last column is the honest cost and it is not small. If you want to own the infrastructure, choose the middle column and accept the work. The trade only pays off when the app matters more than the stack does, which for a rota, a tracker or a small internal tool is usually true, and for a product you intend to sell is usually not.
Questions people ask next
Can Claude Code build a full web app?
Yes, it writes the code for one and can run it locally. What it does not do is host the finished app, because Anthropic describes it as a tool that reads your codebase, edits files and runs commands, on a terminal, IDE, desktop app or browser. Those are developer surfaces, not somewhere an app runs for other people, so hosting is a separate step you attach.
Can Claude Code deploy the app it just built?
Not on its own, but it can through an MCP server. Anthropic documents MCP as the supported way to connect Claude Code to external tools, databases and APIs, and a hosting MCP server lets the same agent deploy the app and keep working on its live data afterwards.
Do I need to know how to code to build an app with Claude Code?
To get a working local app, often no. To get past the first thing that breaks, usually yes, because the failures that matter are configuration, sign-in and data rather than syntax. If you would rather not meet those at all, a platform that supplies accounts and a database removes most of them.
Where does an app built with Claude Code actually run?
On your own machine, by default. The code lives in the directory you started Claude Code in and runs on localhost, which is reachable only from that computer. Giving anyone else access means putting it somewhere that stays online independently of your laptop.
Is it free to build an app with Claude Code?
Claude Code needs a Claude subscription or an Anthropic Console account, and building locally costs nothing beyond that. Hosting is where costs usually appear, since a server, a domain and a managed database each carry a monthly bill.
Primary sources
Every claim about Claude on this page comes from Anthropic's own documentation, quoted rather than summarised so you can check it yourself.