GuidesIntegration Playbooks
Unsupported Stacks Playbook
How to integrate Wacht when you are not on the first-class framework adapters.
If your stack is not Next.js, React Router, or TanStack Router, use this adaptation pattern.
Adaptation diagram
Unsupported frontend stack
|
+--> @wacht/jsx + custom PlatformAdapter
|
+--> hosted auth entry + session-aware UI
|
+--> backend-protected API boundary
|
+--> @wacht/backend (Node) or wacht (Rust)
|
+--> auth + tenancy checks per requestPattern
- Frontend:
@wacht/jsxwith explicit platform adapter and hosted auth entry. - Backend:
@wacht/backend(Node) orwacht(Rust) for protected operations. - Contracts: frontend and backend API references for exact request/response shapes.
Frontend baseline
Start with React (Router-Agnostic):
- mount
DeploymentProviderwith a customPlatformAdapter - use
SignedIn,SignedOut, and auth navigation helpers - keep privileged operations on backend routes
Backend baseline
Protect all sensitive routes server-side and map auth failures into deterministic HTTP errors.
Adapter checklist
- Navigation semantics are explicit (
replacevspush). - Redirect return URLs are preserved after auth.
- Session headers/cookies are forwarded correctly through your runtime.
- Tenant context (org/workspace) is resolved server-side before mutations.
When to migrate to a first-class adapter
If you are reimplementing route guards, auth callbacks, and session plumbing repeatedly, migration cost is usually lower than continued custom maintenance.
Use one of: