Skip to content

wacht-platform/react-sdk

Repository files navigation

Drop-in React, Next.js, React Router, and TanStack Router bindings for Wacht.

npm License Status React

Website · Docs · Issues


Overview

The Wacht React SDK is the official client layer for embedding Wacht into a React application. It wraps the Frontend API with typed hooks, ready-to-use components, and framework adapters so authentication, multi-tenancy, notifications, agent UIs, and API identity flows can be added with a few lines of code.

A single shared core (@wacht/jsx) provides the components and hooks; thin adapter packages add provider, navigation, and server-helper integration for each supported framework.

Packages

Package Purpose
@wacht/types Shared TypeScript contracts used across the SDK.
@wacht/jsx Core components, hooks, providers, and utilities. Framework-agnostic React.
@wacht/nextjs Next.js adapter — provider, navigation adapter, and server helpers.
@wacht/react-router React Router adapter — provider, navigation adapter, and server helpers.
@wacht/tanstack-router TanStack Router adapter — provider, navigation adapter, and server helpers.

Each package is published independently from its own dist/ output.

What's Included

  • Authentication. <SignIn />, <SignUp />, social providers, MFA, password reset.
  • Account management. Profile, security, devices, attached identities.
  • Multi-tenancy. Organization and workspace switching, membership, invitations, roles.
  • Notifications. In-app notification feed and toast surfaces.
  • Agents. UI primitives for invoking and streaming Wacht agents from the browser.
  • API identity. End-user API key and OAuth client management.
  • Webhooks. Customer-managed webhook subscription UIs.
  • Hooks. Typed hooks (useUser, useSession, useOrganization, …) for everything above.

Workspace Layout

wacht-types/        Shared type definitions
jsx/                Core React components, hooks, providers
nextjs/             Next.js bindings
react-router/       React Router bindings
tanstack-router/    TanStack Router bindings
examples/           Reference apps for each framework

Quickstart

Install the adapter for your framework:

# Next.js
pnpm add @wacht/nextjs

# React Router
pnpm add @wacht/react-router

# TanStack Router
pnpm add @wacht/tanstack-router

See the documentation for provider setup, environment variables, and framework-specific guides.

Local Development

pnpm install

# Build the entire workspace
pnpm build

# Build a single package
pnpm build:types
pnpm build:jsx
pnpm build:nextjs
pnpm build:react-router
pnpm build:tanstack-router

Status

The React SDK is in public beta. The hook and component APIs are stabilizing; breaking changes are noted in each package's changelog.

Contributing

We're not accepting pull requests yet — the contribution process isn't set up. Forks and any other use the Apache-2.0 license allows are welcome.

Support

License

Licensed under the Apache License, Version 2.0. See LICENSE.md for the full text.


* This README was AI-generated.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors