Official Flutter packages for Stream Chat
Quick Links
- Register to get an API key for Stream Chat
- Flutter Chat SDK Tutorial
- Chat UI Kit
- Sample apps
This repository contains code for our Dart and Flutter chat clients.
Stream allows developers to rapidly deploy scalable feeds and chat messaging with an industry leading 99.999% uptime SLA guarantee.
V4 Migration Guide
Warning
Flutter > = v3.16.x
uses material 3 by default which breaks the UI of some of the components.
If you want to use these versions, you need to set the useMaterial3
parameter to false
in the ThemeData
.
eg.
MaterialApp(
theme: ThemeData(
useMaterial3: false,
),
...
);
StreamChat
widget overrides the useMaterial3
parameter to false
by default
so if you are using StreamChat
widget, you don't need to set it manually.
For upgrading from V6 to V7, please refer to the V4 Migration Guide
Our team maintains a dedicated repository for full fledged sample applications and demos. Consider checking out GetStream/flutter-samples to learn more or get started by looking at our latest Stream Chat demo.
Stream is free for most side and hobby projects. To qualify your project/company needs to have < 5 team members and < $10k in monthly revenue. For complete pricing details visit our Chat Pricing Page
Stream Chat Dart is a monorepo built using Melos. Individual packages can be found in the packages
directory while configuration and top level commands can be found in melos.yaml
.
To get started, run bootstrap
after cloning the project.
melos bootstrap
We provide a variety of packages depending on the level of customization you want to achieve.
A pure Dart package that can be used on any Dart project. It provides a low-level client to access the Stream Chat service.
This package provides a persistence client for fetching and saving chat data locally. Stream Chat Persistence uses Moor as a disk cache.
This package provides business logic to fetch common things required for integrating Stream Chat into your application. The core
package allows more customisation and hence provides business logic but no UI components.
This library includes both a low-level chat SDK and a set of reusable and customizable UI components.
This library includes a set of localization files for the Flutter UI components.
The best place to start is the Flutter Chat Tutorial. It teaches you how to use this SDK and also shows how to make frequently required changes.
Every package folder includes a fully functional example with setup instructions.
We also provide a set of sample apps created using the Stream Flutter SDK at this location.
All of the Stream Chat packages follow semantic versioning.
See our versioning policy documentation for more information.
We've recently closed a $38 million Series B funding round and we keep actively growing. Our APIs are used by more than a billion end-users, and you'll have a chance to make a huge impact on the product within a team of the strongest engineers all over the world.
Check out our current openings and apply via Stream's website.