ikon_sdk 1.0.0
ikon_sdk: ^1.0.0 copied to clipboard
Official Ikon client SDK for building native Flutter frontends for Ikon AI apps — connect, stream the server-driven Parallax UI, audio/video and WebRTC.
Ikon SDK for Dart & Flutter #
ikon_sdk is the official client SDK for building native Flutter frontends for
Ikon AI apps. It connects to an Ikon server, streams the
server-driven Parallax UI tree over the binary Ikon protocol, and renders it as
native Flutter widgets — including the platform's own audio streaming, image
capture and push-to-talk.
Install #
flutter pub add ikon_sdk
Quickstart #
Connect to a server, wrap the connection in an IkonUiCore, and render it with
IkonParallaxView:
import 'package:flutter/material.dart';
import 'package:ikon_sdk/ikon_sdk.dart';
class IkonScreen extends StatefulWidget {
const IkonScreen({super.key});
@override
State<IkonScreen> createState() => _IkonScreenState();
}
class _IkonScreenState extends State<IkonScreen> {
IkonClient? _client;
IkonUiCore? _uiCore;
@override
void initState() {
super.initState();
_connect();
}
Future<void> _connect() async {
// Local dev server (auto-authenticates).
final client = await IkonClient.connectLocal(host: 'localhost', port: 8443);
setState(() {
_client = client;
_uiCore = IkonUiCore(client);
});
}
@override
void dispose() {
_uiCore?.dispose();
_client?.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
final uiCore = _uiCore;
if (uiCore == null) {
return const Center(child: CircularProgressIndicator());
}
return IkonParallaxView(uiCore: uiCore, client: _client);
}
}
Connecting #
IkonClient exposes three connection entry points:
IkonClient.connectLocal(...)— local development server, no identity needed.IkonClient.connectGuest(...)— anonymous connection to a deployed space.IkonClient.connectWithToken(...)— authenticated connection with an OAuth / session token.
Subscribe to client.onStateChange (an IkonConnectionState stream) to drive
your connecting / connected / error UI.
Highlights #
IkonClient— connection, the binary protocol, function registry, reactive state and global state.IkonParallaxView— renders the server-driven Parallax UI as Flutter widgets; supports named mounts via themountparameter.IkonMediaManager— the platform's own audio streaming (Opus playback and capture over the Ikon protocol), image capture and sharing.
License #
MIT — see LICENSE.