Deploy guide · Reviewed by the White Ghost team, September 2026
How to deploy an app built with Claude Code
Claude Code writes normal web applications, so you have real options: a developer platform you assemble yourself, a temporary artifact link, or a managed platform. With White Ghost the whole flow is one CLI that Claude Code can drive for you, and the app goes live with a permanent URL, a database, and access rules you choose. It takes one conversation.
What you need before you start
- The folder Claude Code has been working in, with the app running locally (the localhost link).
- A GitHub account. The code is stored in your own account and you can download it as a zip whenever you want.
- A Node or Python app. A plain HTML file is not an app by itself; Claude Code can wrap it into one in a few minutes.
- A White Ghost account. The Free plan is enough for a first app: 3 apps awake, one builder, no card needed.
- Claude Code open in that folder. It does the technical part; you approve.
Tell Claude Code to do it
Paste this into the Claude Code conversation, in the folder of your app:
Install the ghosty CLI (npm install -g ghosty-cli), sign in with ghosty login, then run ghosty init in this folder to create the app and its repository. Push the code and run ghosty deploy until the app is live. Use --json output and tell me the final URL.It will ask you to approve the sign-in once (a link opens in your browser) and to confirm the answers of the short interview. Everything else it does alone. The steps below are what it is doing, with how to check each one.
From local folder to live URL, in five steps
- Install the CLI once (or let your assistant do it). npm install -g ghosty-cli. Every command supports --json and ends with a parseable ready line, so Claude Code can drive the whole flow for you. How to check: ghosty --version prints a version number.
- Sign in. ghosty login. No passwords: magic link, Google, GitHub, or passkey. How to check: The command ends with a ready line and your email; the console at console.whiteghost.ai shows you signed in.
- Scaffold the app. ghosty init asks a few questions (name, what it does, backend language, whether it needs a database) and creates a normal repository in your own GitHub account. How to check: The app appears in the console dashboard, and the repository appears in your GitHub account.
- Build with Claude Code. ghosty dev runs the app locally while you keep shaping it with your assistant. Each app ships starter instructions that teach the assistant its conventions. How to check: The localhost link opens the app with your latest changes.
- Ship. git push triggers the build and rollout; real builds of a full app have taken 53 seconds and 1 minute 27 seconds. Run ghosty deploy to watch until the new version is live on its own URL, with access controls built in. How to check: The Deploys tab shows the build as successful, and the app URL opens from your phone with Wi-Fi off.
Or start from the console and send the work to Claude Code
The bridge runs in both directions. The Overview of every app has an "Open in Claude Code" button, plus "Copy the instructions": a ready-made prompt that carries the app URL and the repository URL, so the assistant picks the work up with full context. You do not have to explain the project to it.
What you get after shipping
Deploying is not the end of the flow. Each app comes with a deploy history (every build keeps its commit, timing, and log, with a Redeploy button), a live log feed, analytics with requests and errors per day over 7 or 30 day windows, and a live preview URL for every open pull request, updated on each push. Secrets are applied without a redeploy, scheduled jobs can call your endpoints on a timer, and a custom domain comes with SSL issued and renewed automatically.
Limits and cost
- Free plan: 3 apps awake and one builder; Solo ($19 a month) raises that to 10 apps awake, custom domains and 10 GB of file storage. Team plans add unlimited seats.
- The app scales to zero when idle, so the first visit after a quiet period takes a moment to wake up.
- You need a GitHub account: that is where the code lives, and you can leave with it whenever you want.
- The access mode (public, shared invite code, or your own sign-in) is part of the app code: changing it later means editing and redeploying.
- Preview links for pull requests are public URLs; do not put production data behind a preview.
- No background workers or WebSockets yet: long jobs run as scheduled HTTP calls, not as always-on processes.
Full plan details on the pricing page.
Where can a Claude Code app live? The honest map
| Option | Best for | The trade-off |
|---|---|---|
| Claude artifacts | Showing a prototype right now | A capture of work, not an application: single page, no backend or database, and retention policies or sharing toggles can kill the link |
| Vercel / Netlify / Cloudflare | Engineers shipping public production software | You assemble hosting, database, auth, and permissions yourself |
| Railway / Render / Fly.io | Apps needing persistent servers and workers | Same assembly, plus infrastructure to operate |
| White Ghost | Builders and teams shipping real apps with the AI assistant they already have | Managed platform: less infrastructure control than assembling your own stack |
Questions people actually ask
Can Claude Code deploy the app by itself?
Yes. The ghosty CLI is designed to be driven by an agent: it signs in with a device flow you approve once, every command supports --json, and long-running commands end with a parseable ready line. You can ask Claude Code to install, initialize, and ship without leaving the conversation.
Do viewers need a Claude account to open my app?
No. Apps deployed with White Ghost live on a normal URL with access rules you choose: public, a shared invite code, workspace members, or the app’s own sign-in. Viewers never need an account on any AI platform.
What if a deploy breaks something?
Run ghosty rollback, or open the Deploys tab and press Redeploy on any previous build. Every build in the history keeps its commit, timing, and log.
Is an app made with Claude Code a special kind of app?
No. Claude Code writes standard web applications. That is why any hosting works in principle; the real question is how much infrastructure (database, access control, updates) you want to assemble yourself.
What happens to the database and files?
Every app gets a managed PostgreSQL database, and file storage you can enable per app, with signed download links that expire. Integration credentials are injected securely by the platform, so provider keys never live in the repo.
Can I leave later?
Yes. The code lives in your own GitHub account from day one: you can leave whenever you like and take the code, the data, and the history with you.