Quickback Docs

With Quickback

How the Account UI is configured and built into your compiled Quickback Worker.

Account UI is part of the Quickback Stack. The compiler builds it from source and bundles it into your Worker — there is no separate npm package or standalone deploy path.

Compiler-Embedded

Add account to your quickback.config.ts:

quickback/quickback.config.ts
export default {
  name: "my-app",
  template: "hono",
  account: {
    domain: "auth.example.com",
    name: "My App",
    companyName: "My Company",
    auth: {
      password: true,
      passkey: true,
      organizations: true,
      admin: true,
    },
  },
  // ...providers
};

Then compile and deploy:

quickback compile
npx wrangler deploy

What Happens During Compilation

  1. The compiler reads your account config and generates a .env file with the correct Vite environment variables (VITE_QUICKBACK_URL, VITE_QUICKBACK_API_URL, VITE_ENABLE_PASSWORD, branding, etc.)
  2. The Account SPA source is copied to a temp directory, with disabled feature routes excluded
  3. Pre-installed dependencies are symlinked (no npm install during build)
  4. Vite builds the SPA with your settings baked in
  5. Built assets (content-hashed filenames) are placed in the output directory

When CMS is also enabled, Account assets go to src/apps/account/ and are served at /account/. When Account is the only SPA, assets go to src/apps/ and are served at root.

Custom Domains

With a custom domain, the Account SPA is served at root (/) on that domain:

account: { domain: "auth.example.com" }

Add an admin domain to serve the admin panel on its own subdomain:

account: {
  domain: "auth.example.com",
  adminDomain: "admin.example.com",
}

See Multi-Domain Architecture for details on hostname routing and cross-subdomain cookies.

Auth Feature Flags

Feature flags control which pages are included in the build:

auth: {
  password: true,       // Email/password login + inline password change
  emailOTP: false,      // Email OTP login flow
  passkey: true,        // WebAuthn passkey setup + management
  organizations: true,  // Dashboard, org management, invitations
  admin: true,          // Admin panel (user management)
}

Disabled features are excluded at compile time — their route files are removed before the Vite build. See Configuration for all options.

Next Steps

On this page