Adapter SDK

adapter sdk

Adapter SDK

Build server-side adapters that DSUI can render safely.

An adapter is a small TypeScript program that connects one service to the DSUI workspace. It describes how to connect, read data, perform actions, and compose the service’s workflows. DSUI handles execution, refreshing, lifecycle, and rendering.

The adapter mental model is deliberately small:

connection + context
       ├── resources  (reads)
       ├── actions    (commands)
       ├── jobs      (background work)
       ├── signals   (events)
       ├── stores     (state)
       └── pages      (workflow)
PrimitiveUse it forDocs
ResourceExternal dataRead-only data sources managed by the runtime
ActionCommands and mutationsSide effects with abort, invalidation, store access
JobsBackground workScheduled polling for each configured service
SignalsEventsTyped, durable events emitted into DSUI’s event stream
PageRoutesCompose components with typed params and stores
StoreLocal UI stateClient/session state with persistence
ComponentReusable UIServer composites and browser components
ContextPer-instance clientsBuilt during adapter initialization

Keep external data in resources. Keep side effects in actions. Keep local or persistent UI state in stores. Adapters use DSUI’s shared components instead of shipping a separate application. A limited browser component is available when a service needs a specialized interaction.

DSUI ships 28 builtin components for building pages — tables, cards, forms, layouts, and more.

Start with create an adapter, then read the resource, action, page, and store guides. The same SDK can be used for a private adapter around an internal service, but the primary use case is connecting the systems already present in a data or infrastructure stack.

Read the contribution guide before opening a PR.