Skip to main content
An ephemeral is a disposable Xano environment in Xano’s cloud. It runs the same backend as the Xano Engine, at a URL other people can reach, and it expires on its own. Use one to share a build, and as the source of a release.

Deploy to an ephemeral

An ephemeral is created under your Xano workspace, so sign in once first:
Then deploy to an ephemeral:
The scaffolded script builds the frontend and passes --static ./frontend/dist, so the ephemeral serves both (see Frontend hosting). The deploy prints the backend URL, and the frontend URL when it published one.
Not every instance has ephemerals turned on. Where they are off, deploy --ephemeral says so and names who can turn them on. A deploy to the Xano Engine still works meanwhile.

Create, refresh and expire

The project tracks one ephemeral. Its record is .xano/ephemeral.json, which is uncommitted.
  • The first deploy creates it. These flags apply only then: On an ephemeral that already exists they are accepted and not acted on, and the --json summary lists them under notApplied.
  • Every later deploy refreshes it. The ephemeral keeps its name and backend URL, and the deploy replaces what it holds: tables are recreated and seeded again.
  • When it expires, it is gone. The next deploy creates a new ephemeral with a new URL and clears the old record.

Keep rows, or start over

A deploy to an ephemeral replaces everything on it unless you pass --keep-data, which merges as on the Engine: code and schema changes land, and the rows already in the tables stay.
A --keep-data deploy merges only into an ephemeral an earlier deploy finished filling. A new or recreated one is replaced and seeded, and the deploy says why.

Manage ephemerals

These commands take an ephemeral’s name (the handle, such as e4f2-9ab1), not its display name. ephemeral list shows the handle in bold. After a deploy to an ephemeral, it is the backend this project tracks, so xanosdk status, test run-all, tables and env pull reach it with no flag. Name another one as ephemeral:<name>.

Cut a release from it

A release is cut from what is running on an ephemeral, not from the Engine:
Releases covers the rest of the flow.

Next