Getting started
Install the SDK, choose a runtime adapter, and create the first client composition.
Requirements
- A modern browser, maintained Node.js release, or supported Expo runtime.
- TypeScript is recommended.
- A storage adapter suitable for the target environment.
Install
npm install @signal-protocol/sdkCreate a browser client
import { createSignalClient } from '@signal-protocol/sdk';
import { indexedDbStore } from '@signal-protocol/sdk/local/store/web';
const storage = await indexedDbStore();
const client = await createSignalClient({
identity: { userId: 'alice' },
adapters: { storage },
});The user identifier belongs to your application. It is not a hosted Signal Protocol project identifier.
Choose infrastructure explicitly
The client does not silently select a hosted relay or object store. Register adapters at the application composition root and keep their credentials outside protocol state.
const client = await createSignalClient({
identity: { userId },
adapters: { storage, relay, blobStore },
});Start with local test adapters
A local or mock adapter is the fastest way to exercise identity, session, and message flows before selecting production infrastructure.
Next steps
- Read Identity and trust.
- Select a runtime profile.
- Decide whether the AGPL or a commercial license fits the product.