Deploy a PRISM Site

Deploying a PRISM site takes three steps: build and check the app with the bext CLI, put it online on a hostname, then iterate with live reload. For choosing a subdomain or a custom domain, see Provisioning Subdomains.

1. Build and check locally

Produce the production bundle into dist/:

bext build

Then check the result as it will be served, in one command (framework detection, build, and serve):

bext run .

To check the discovered routes before going live:

bext routes

See the CLI Reference for each command's flags.

2. Go live

On Inklura, the site's hostnames are managed from the console:

  • its *.inklura.fr subdomain needs no DNS change and is served over HTTPS with a certificate the platform manages;
  • a custom domain is added on the console's Domains page and needs a DNS record pointing to the platform; once the DNS check passes, the certificate and routing are prepared. Details are in Provisioning Subdomains.

3. Live reload

With live_reload = true and your sources listed in [build] watch_dirs, any change to a file in those directories is picked up within a second or two, with no new deploy. live_reload defaults to false, and an empty watch_dirs list turns watching off:

[build]
watch_dirs = ["src/app", "src/components", "src/lib"]
live_reload = true

Saves made in quick succession are batched over debounce_ms (200 ms by default). A new page.tsx or route.ts inside watch_dirs is picked up too: the route table is refreshed when the file appears.

What live reload does not cover

Files outside watch_dirs are not watched: list every source directory you edit (including src/lib). Directories that do not exist in the site are skipped.

Note

public/islands/* is not part of watch_dirs. To force the browser to reload an island script, bump a ?v= query parameter on its <script src>.

Locally

bext dev watches watch_dirs without needing live_reload; if the list is empty, it watches the app directory. bext routes re-reads the files on every call: if a route shows up there but bext dev does not serve it, restart bext dev.

Related