Packages
Distri's client SDK is a small set of npm packages under the @distri scope,
all published from the distrihub/distrijs
monorepo. Most apps only install one framework package (@distri/react or
@distri/angular); it pulls in the shared core for you.
| Package | What it is | When you need it |
|---|---|---|
@distri/core | The framework-agnostic API client (DistriClient) covering agents, threads, streaming, and A2A event encoding. | Directly, only for non-UI or custom integrations. Otherwise pulled in by the framework packages. |
@distri/state | A framework-agnostic reactive state layer (chat, tasks, workflow, resources) that the UI packages adapt. | Rarely direct. It's the shared engine under React and Angular. |
@distri/react | React hooks and drop-in components: DistriProvider, useAgent, useChat, <Chat>, tool-call cards, and more. | Building a React product. Start here. |
@distri/angular | Angular SDK: Signal-based services (provideDistri, createChatService) and the <distri-chat> component. | Building an Angular product (17+). |
@distri/fs | IndexedDB-backed filesystem tools and React workspace UI for agents that read and write files in the browser. | Agents that manipulate files client-side. |
Install
React:
npm install @distri/react @distri/core
Angular (17+):
npm install @distri/angular @distri/core @distri/state
Which one to start with
- React app →
@distri/react. See Using Distri in your product. - Angular app →
@distri/angular. Same guide has an Angular tab. - No framework / server-side →
@distri/coredirectly. See Using distri-client.
All packages track the same release line, so keep them on matching versions.