synkora_chat 1.0.0
synkora_chat: ^1.0.0 copied to clipboard
Native Flutter SDK for embedding Synkora AI chat widgets. Drop-in UI + headless API client with local message cache.
synkora_chat #
Flutter SDK for embedding Synkora AI agent chat into your app. Includes a drop-in SynkoraChatWidget and a headless SynkoraChatController for custom UIs.
Features #
- Drop-in chat UI with streaming responses
- Headless controller for fully custom interfaces
- Local message cache (SQLite via Drift) — messages persist across sessions
- Markdown rendering in assistant messages
- Suggestion chip prompts configured from the Synkora dashboard
- Identity verification via HMAC user hash
- Conversation history loading
Installation #
dependencies:
synkora_chat: ^1.0.0
Usage #
Drop-in widget #
import 'package:synkora_chat/synkora_chat.dart';
SynkoraChatWidget(
widgetKey: 'wk_your_key_here',
baseUrl: 'https://your-synkora-instance.com',
)
With user identity #
SynkoraChatWidget(
widgetKey: 'wk_your_key_here',
baseUrl: 'https://your-synkora-instance.com',
user: WidgetUser(id: 'user_123', name: 'Alice', email: 'alice@example.com'),
userHash: 'hmac_sha256_of_user_id', // generated server-side
)
Headless (BYO UI) #
final controller = SynkoraChatController(
client: SynkoraClient(
widgetKey: 'wk_your_key_here',
baseUrl: 'https://your-synkora-instance.com',
),
);
await controller.init();
// Send a message
controller.send('Hello!');
// Listen for updates
controller.addListener(() {
final messages = controller.messages;
final isStreaming = controller.isStreaming;
});
// Clean up
controller.dispose();
Widget Key #
Get your widgetKey from the Synkora dashboard → Agents → Widget tab.
Requirements #
- Flutter
>=3.19.0 - Dart SDK
>=3.3.0