SDKsStable · 3 min read

SDKs


Perkamo integrations are backend-first. Your backend sends trusted events and keeps server API keys secret. Browser integrations add a frontend client only after your backend can return short-lived client tokens signed with a Perkamo signing key.

Create the Space and server key in Spaces and Server keys before wiring any SDK.

Packages

PackageRegistryStatusUse
@perkamo/sdknpmStableBackend JavaScript or TypeScript integrations.
@perkamo/sdk-corenpmStableAdvanced runtime-neutral validation, canonical JSON and transaction ID helpers.
@perkamo/browsernpmPreviewBrowser-safe client and widget helpers used with backend-issued client tokens.
@perkamo/reactnpmPreviewReact provider and hooks for customer state, events and realtime streams.
@perkamo/react-nativenpmPreviewReact Native and Expo client and hooks with polling live updates.
@perkamo/nextjsnpmPreviewNext.js route handlers, Server Components and Client Component helpers.
@perkamo/mcpnpmPreviewInstallable stdio MCP adapter for AI-assisted Perkamo operations.
perkamo/sdkPackagistStableBackend PHP integrations.
perkamo/symfony-bundlePackagistPreviewSymfony backend and browser SDK token route integration.

Choose an integration guide

backends that emit events and read customer state.

frontend apps. Use this with a backend token route; never put a server API key in browser code.

  • React SDK for Vite, Remix, React Router and other

React apps that render customer state with hooks.

and Expo mobile apps.

Components and Client Components.

apps that need backend events plus browser SDK token endpoints.

installable @perkamo/mcp stdio adapter.

Install by integration

Backend JavaScript or TypeScript integrations:

bash

npm install @perkamo/sdk

Backend PHP integrations:

bash

composer require perkamo/sdk

Symfony integrations:

bash

composer require perkamo/symfony-bundle

Browser integrations with a bundler:

bash

npm install @perkamo/browser

React integrations:

bash

npm install @perkamo/react

React Native and Expo integrations:

bash

npm install @perkamo/react-native

Next.js integrations:

bash

npm install @perkamo/nextjs @perkamo/browser @perkamo/sdk

Local stdio MCP clients:

bash

npm install --global @perkamo/mcp

Browser integrations without a bundler can load the standalone build from the free jsDelivr npm CDN:

html

<script src="https://cdn.jsdelivr.net/npm/@perkamo/browser@0.10.0/dist/perkamo-browser.global.min.js"></script>

Pin the package version so production pages load a reviewed browser bundle. UNPKG serves the same npm package as an alternative: https://unpkg.com/@perkamo/browser@0.10.0/dist/perkamo-browser.global.min.js.

Security boundary

Server API keys belong only on trusted backends. For browser and embedded widget work, your frontend calls your own backend first. That backend verifies the user session and returns only a short-lived browser token or already-filtered customer state. It can self-sign the token with a Perkamo signing key or request one from Perkamo with a server key.

Read Security and keys before shipping a browser or mobile integration.