Quickstarts
Quickstart: Sites
Deploy a frontend (static or SSR) next to your database.
Sites hosts a Vite/Next/Astro/SvelteKit build over HTTPS with previews and rollback.
Variables used below: $HOSTBASE_TOKEN (access token), $REF (project ref). SDKs: @hostbase/management (TypeScript) and hostbase_management (Python); full reference at /docs/api.
1. Deploy a build
Point at a finished build directory or at your source code.
curl -X PUT https://host.ulewicz.space/api/v1/projects/$REF/sites/shop -H "Authorization: Bearer $HOSTBASE_TOKEN" -H "Content-Type: application/json" -d '{"framework":"vite"}'
# then POST .../sites/shop/deployments with {"mode":"dist","archive_base64":"..."}await hb.saveSite({ ref, name: "shop", body: { framework: "vite" } as never });
await hb.deploySite({ ref, name: "shop", body: { mode: "dist", archive_base64 } as never });hb.deploy_site(ref=ref, name="shop", body={"mode": "dist", "archive_base64": archive_b64})hostbase sites deploy ./dist --site shop
hostbase sites deploy . --site shop --mode source2. Variables and a domain
CNAME to <site>-<ref>.host.ulewicz.space; the certificate is automatic.
curl -X PUT https://host.ulewicz.space/api/v1/projects/$REF/sites/shop/env -H "Authorization: Bearer $HOSTBASE_TOKEN" -H "Content-Type: application/json" -d '{"env":{"VITE_API_URL":"https://abcdefghijklmnopqrst.host.ulewicz.space"}}'
curl -X POST https://host.ulewicz.space/api/v1/projects/$REF/sites/shop/domains -H "Authorization: Bearer $HOSTBASE_TOKEN" -H "Content-Type: application/json" -d '{"hostname":"www.example.com"}'await hb.setSiteEnv({ ref, name: "shop", body: { env: { VITE_API_URL: "https://abcdefghijklmnopqrst.host.ulewicz.space" } } });
await hb.addSiteDomain({ ref, name: "shop", body: { hostname: "www.example.com" } });hb.set_site_env(ref=ref, name="shop", body={"env": {"VITE_API_URL": "https://abcdefghijklmnopqrst.host.ulewicz.space"}})hostbase sites env set shop VITE_API_URL=https://abcdefghijklmnopqrst.host.ulewicz.space
hostbase sites domains add shop www.example.com3. Roll back
Promote any ready deployment without a rebuild.
curl -X POST https://host.ulewicz.space/api/v1/projects/$REF/sites/shop/deployments/d11/promote -H "Authorization: Bearer $HOSTBASE_TOKEN"await hb.siteDeploymentAction({ ref, name: "shop", id: "d11", action: "promote" });hb.site_deployment_action(ref=ref, name="shop", id="d11", action="promote")hostbase sites rollback shop d11Next: /docs/sites.