# Usage

Here’s an example of how to use the Persona SDK in your chat application:

```typescript
import dynamic from 'next/dynamic';

const PersonaRuntimeProvider = dynamic(() => import('@applica-software-guru/persona-chat-sdk').then((mod) => mod.PersonaRuntimeProvider), {
  ssr: false,
});

const logger = new PersonaConsoleLogger();

function Chat() {
  return (
    <PersonaRuntimeProvider
      dev
      logger={logger}
      protocols={{
        rest: true,
        webrtc: true,
        websocket: true,
      }}
      session={'<session-id>'}
      apiKey="<api-key>"
      agentId={'<agent-name>'}
    >
      <div className="h-dvh w-full">
        <Thread />
      </div>
    </PersonaRuntimeProvider>
  );
}
```

**Note**: When using WebRTC, it is recommended to import `PersonaRuntimeProvider` dynamically with `ssr: false` (as shown above) to ensure compatibility with server-side rendering frameworks like Next.js.

### Development Mode

Use the `dev` prop to enable development mode. This redirects all traffic to a local installation of Persona (e.g., `localhost:8000`).
