Publishing your app
What a publish ships, why the live site can be behind the preview, changing the floot.app address, unpublishing, the Made with Floot badge, and what to do when a publish is stuck.
Publishing puts your project live at its floot.app address and on every custom domain you connected. Nothing goes live until you publish, or ask your assistant to.
What a publish ships
A publish takes the whole project as it is at that moment, pages and backend together, and replaces the live version with it. It goes to your floot.app address and to every connected custom domain at once, because they all serve the same app.
- Nothing is published automatically. Changes made by you or your assistant show in the preview only, until someone publishes.
- Your assistant can publish. Ask it to. Publishing through the connector runs the same code as the Publish button.
- Your database is not part of a publish. The preview and the live app use the same database, so a change to data or to tables is live as soon as it is made. See Your database.
- Scheduled jobs go live with the publish. A job you added or changed starts running in the published app at the next publish.
- A failed publish changes nothing. The live app stays on the version it had.
To publish only part of your recent work, restore the checkpoint you want to ship, make the changes you want on top of it, and publish. To take the live app back to an earlier state, do the same: restore the checkpoint from before the change, then publish. A restore changes your project's code, not your data. See Checkpoints and undoing changes.
Publish for the first time
- 1
Open Publish
Open your project on floot.com and click Publish in the top-right.
- 2
Choose the address
Type the name you want in front of
.floot.app. It can hold lowercase letters, numbers and hyphens. A name another app is using is refused, so try another. - 3
Click Publish
Floot checks the project for errors, then builds and deploys it, usually in 1–2 minutes. Keep the tab open during the check. Once the build is running you can close it: publishing continues in the background.
After that, the same screen shows your live address and when the live version was completed. To ship new changes, open Publish and click Publish update.
What the Publish button says
| Button | What it means |
|---|---|
| Publish | The app is not published yet, or it is live and nothing has changed since the last publish |
| Publish changes | The app is live, and the project has changed since the version that is live. Those changes are not public yet |
| Checking | The error check before a publish is running |
| Publishing | The build and deploy are running |
| Published | The publish just finished and the new version is live |
| Publish failed | The last attempt did not finish. The live app is still on the previous version |
The button only opens and closes the Publish screen. Nothing is published until you confirm there.
My live site does not show my changes
Check these in order.
- Was it published after the change? If the button reads Publish changes, the live site is behind the preview. The Publish screen shows Completed with the time of the version that is live.
- Did the publish finish? Publish failed means the previous version is still live. See When a publish is stuck or fails below.
- Is your browser showing an old copy? Hard-refresh the page (
Ctrl/Cmd + Shift + R) or open it in a private window. Floot clears its own cache at every publish. - Are you looking at an installed mobile app? An app on a phone does not update from a publish alone. See Creating mobile apps.
- Does only one domain look old? All of a project's domains serve the same version. A domain that shows something else is not pointing at Floot: see Custom domain troubleshooting.
If what differs is data (rows, accounts, uploaded files) and not the pages, publishing is not the cause: the preview and the live app read the same database.
Changing the floot.app address
A project has one floot.app address. To get a different one, release the old name and publish under the new one.
- 1
Remove custom domains
Open Publish, click the gear next to each custom domain, and choose Remove custom domain. The address cannot be released while a domain is attached.
- 2
Unpublish
Click the Unpublish icon next to your live address and confirm Delete subdomain.
- 3
Publish under the new name
Type the new name and click Publish.
- 4
Add your custom domains again
Run Add Custom Domain for each one — see How to add a custom domain.
Before you change it
The app is offline between the unpublish and the new publish. The old name is released at once and anyone can publish to it, and links to the old address do not forward to the new one. Mobile app builds call the floot.app address they were built with, so build and release the app again afterwards. Update any webhook or sign-in redirect address you registered with another service.
Unpublishing
Open Publish, click the Unpublish icon next to your live address, and confirm Delete subdomain. Remove any custom domain first, from the gear next to it. You can also ask your assistant to unpublish the app; that call never counts against your daily build actions.
- What stops
- The live app and its backend go offline, and its scheduled jobs and pending background tasks stop with it. The
floot.appname is released, and someone else can publish to it. - What stays
- The project, its preview, its database and its stored files. The database and stored files still count toward hosting while the app is unpublished.
- What resets
- The Display Floot logo switch goes back to on for the next publish. That an app was private is remembered: publish it again from the Internal publish tab to keep it private.
The Made with Floot badge
A published app shows a small Made with Floot badge in the bottom-right corner. Visitors can close it for their visit; removing it for everyone needs a paid plan on the project owner's account.
- 1
Switch it off
Open Publish and turn off Display Floot logo. On a free plan the row reads Hiding the logo is a paid feature, and the switch opens the upgrade dialog instead.
- 2
Publish
The switch takes effect at the next publish, so click Publish or Publish update. Later publishes, including your assistant's, keep the badge off.
The badge comes back when the paid plan ends. Floot checks once a day and puts it back on the live app, and the switch goes back to on. After a failed payment you have 2 days to fix the card before that happens. Subscribing again does not remove it by itself: turn Display Floot logo off and publish once more. The switch also starts on for a first publish, and for the first publish after an unpublish.
When a publish is stuck or fails
| What you see | What to do |
|---|---|
| Checking for errors for much longer than 1–2 minutes | Reload the page and publish again. If it sticks a second time, try another browser, or ask your assistant to publish for you |
| A list of files with errors | The check found problems in your code. Click Copy AI fix prompt, paste it to your assistant, and publish again once it has fixed them |
| Taking a little longer than usual — still running | Nothing to do. The build is still going |
| Publish failed with an error | Your live app is untouched. Click Try Again once. If it fails the same way, copy the error text to your assistant, which can act on it |
| The backend is too big to deploy | Your backend code and the packages it uses are over the 250 MB limit. Ask your assistant to find the largest packages the backend depends on and replace or remove them, then publish again |
Website only, or the mobile app too
On the Publish screen, Publish mobile app decides whether a publish also builds the iOS and Android app.
- Off: the publish updates your website and backend. No app is built, and apps already live in the stores keep their current version.
- On: Floot also builds the mobile app, which uses one of your monthly app builds. If none are left, web publishing still works.
- When your assistant publishes, tell it whether you want the mobile app built too.
See Creating mobile apps for builds and installing them, and Publishing to app stores for the App Store and Google Play.
Public or private
A publish from the Web tab is public: anyone with the link can open the app. To publish for invited people only, use the Internal publish tab — see Publish privately.
After a plan ends or hosting runs out
When a paid plan ends, the app stays live on its floot.app address, the badge comes back, and connected custom domains are removed after 3 days. When hosting credit runs out, the app itself is taken offline — see Hosting. Paying again does not put things back by itself: publish the app again if it was taken offline, add each custom domain again, and turn Display Floot logo off again.