> ## Documentation Index
> Fetch the complete documentation index at: https://fabricate.build/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Deploying Your App

> Publish your Fabricate app to the web with the Publish wizard — pick a subdomain, choose visibility, and go live on Cloudflare.

Deploying takes the app you've been building in the preview sandbox and publishes it to the public internet on Cloudflare's global network. Until you publish, your app only runs in the preview panel — deploying gives it a real, shareable URL that anyone can open.

<Note>
  Your live app is separate from the preview. The preview reflects your latest changes as you build; the deployed app only updates when you publish or redeploy.
</Note>

## The Publish Wizard

When your app is ready to share, open the **Publish** wizard from the editor. It walks you through everything in a few steps.

<Steps>
  <Step title="Open the Publish wizard">
    Click **Publish** in the editor. Fabricate prepares a production build of your app.
  </Step>

  <Step title="Pick a subdomain">
    Choose a subdomain for your app. This becomes its address on Fabricate's domain — something like `yourapp.fabricate.build`. Pick something short and memorable; you can connect a custom domain later.
  </Step>

  <Step title="Choose visibility">
    Set your app **public** or **private**. Public apps can be opened by anyone with the link and are eligible for the Discover gallery; private apps are restricted. See [App Visibility](/deploy/visibility) for the full breakdown.
  </Step>

  <Step title="Publish">
    Confirm, and Fabricate deploys your app onto Cloudflare. Within moments it's live on the global edge network at your chosen subdomain.
  </Step>
</Steps>

## Your App's URL

Every published app gets a subdomain on Fabricate's domain based on the name you picked in the wizard. This URL works immediately — no DNS setup, no SSL configuration. It's ready to share the moment publishing finishes.

If you'd rather use your own domain, you can connect one after publishing. See [Custom Domains](/deploy/custom-domains).

## Redeploying After Changes

Publishing is not a one-time action. As you keep iterating in Build Mode, your live app stays on the last version you published until you redeploy.

When you've made changes you want to ship, open the **Publish** wizard again and redeploy. Your subdomain, visibility setting, and any custom domain stay the same — only the app's code is updated. This lets you test changes safely in the preview before they reach your users.

<Tip>
  Treat the preview as your staging environment. Get a change feeling right in the preview, then redeploy to push it live.
</Tip>

## Plans and Published Apps

How many apps you can have live at once depends on your plan:

* **Free** — 1 published app
* **Pro** — unlimited published apps
* **Scale** — unlimited published apps

On the Free plan, publishing a second app means unpublishing your first. Upgrade to Pro or Scale to keep multiple apps live at the same time.

## Frequently Asked Questions

<AccordionGroup>
  <Accordion title="Does my app go down while I redeploy?">
    No. Fabricate builds the new version and swaps it in. Visitors keep hitting the current version until the new one is ready.
  </Accordion>

  <Accordion title="Can I change my subdomain later?">
    Yes. You can update your subdomain from the app's settings. Keep in mind the old address will stop working once you change it, so anyone with the old link will need the new one.
  </Accordion>

  <Accordion title="What happens to my environment secrets when I deploy?">
    Secrets you've set in the app's settings are applied to the deployed app. See [Environment Variables & Secrets](/build/environment-secrets).
  </Accordion>

  <Accordion title="Can I unpublish an app?">
    Yes. You can take an app offline from its settings. Your code and data are preserved, and you can publish it again whenever you like.
  </Accordion>
</AccordionGroup>

## Next Steps

<CardGroup cols={2}>
  <Card title="Custom Domains" icon="globe" href="/deploy/custom-domains">
    Connect your own domain with automatic SSL.
  </Card>

  <Card title="App Visibility" icon="eye" href="/deploy/visibility">
    Understand public vs private apps and the Discover gallery.
  </Card>
</CardGroup>
