From TypeScript to a running backend
You author def objects: plain TypeScript values made by factories such astable(),
query() and apiGroup(). You register them on one workspace() and default-export it from
xano/index.ts.
- Compile. The SDK loads
xano/index.tsand compiles every registered def into a bundle: one JSON document in the format Xano imports. - Import. The bundle is imported into a backend: the Xano Engine on your machine, an ephemeral in Xano’s cloud, or (through a release) your workspace or a tenant. The Engine and an ephemeral are the same backend, one local and one in the cloud.
- Record identity.
xano/xano.lockpins the identity of every object, so renaming a table renames it in place instead of dropping it and creating a new one.
Build time and request time
Your TypeScript runs once, at build time. Thes.* statement factories return data that
describes a step. They do not run it. Xano runs the compiled steps, in order, on every
request: a statement’s as names a variable, and response is the HTTP body.
So every value that changes per request is a tagged value, resolved by Xano when the request
arrives: ref("rows") is a stack variable, inp("title") an input, c.bool(true) a
constant. JavaScript operators such as + or === do not compute over them. Compare with
expr() and compute with the fl.* filters instead.
Requests share no memory. State lives in tables.
Where the SDK sits in Xano
Xano stores your backend the same way whatever wrote it, so the SDK works alongside the rest of Xano rather than replacing any of it.
Building is one flow: your agent writes TypeScript, you run it on the Engine, you deploy it
to Xano. The editor is where the whole team reads what got built.
Governing what ships
Code reaches your workspace through a release, a stored record of a backend that came up and answered. You deploy to an ephemeral with tests, cut a release from it, and promote the release onto a new Xano branch of your workspace. Live changes only when you say so. The Govern section covers drift, schema changes, guardrails for coding agents, rollback and CI.Next
- Quickstart: run a backend on the Xano Engine, with no account.
- Build: tables, APIs, tasks, agents and tests, as def objects.
- Glossary: every term on this page, defined once.