Flutter AI components by Stream
This repository holds stream_chat_flutter_ai — a standalone set of Flutter components for
building LLM-driven chat experiences: streaming text, animated typing indicators,
syntax-highlighted code blocks, charts, a purpose-built AI composer, and speech-to-text input.
The package has no dependency on stream_chat, stream_chat_flutter, or any other Stream Chat
package — every widget operates on plain strings, callbacks, and controllers, so it can be
dropped into any Flutter app or paired with any backend/LLM provider. Wiring it up to a Stream Chat
channel is documented as an optional integration.
Quick Links
- Register to get an API key for Stream Chat
- Flutter AI Assistant Tutorial
- Flutter Chat Tutorial
- Sample apps — backend-connected samples across Flutter, React, React Native, iOS and Android
| Package | Pub | Description |
|---|---|---|
stream_chat_flutter_ai |
AI chat UI components: StreamingMessageView, ChatComposer, AITypingIndicatorView, ChartView, CodeBlockView and more. |
See the package README for the full component
reference, and ROADMAP.md for what's planned.
Add the package to your app:
dependencies:
stream_chat_flutter_ai: ^0.0.1Then render a streaming AI response:
import 'package:stream_chat_flutter_ai/stream_chat_flutter_ai.dart';
StreamingMessageView(
text: markdownText, // updated in real time as chunks arrive
typingSpeed: const Duration(milliseconds: 10),
);There is a runnable showcase app in
packages/stream_chat_flutter_ai/example — it needs no
API key.
This is a Melos monorepo built on
Dart pub workspaces, so there is a single shared
dependency resolution and one pubspec.lock at the root.
dart pub global activate melos # requires Dart >= 3.9
melos bootstrap # resolves the workspace
melos run analyze # dart analyze --fatal-infos across the workspace
melos run format # dart format --set-exit-if-changed
melos run test:all # flutter test --coverage
melos run update:goldens # regenerate golden filesSee CONTRIBUTING.md. We're also
hiring!