At Stream, we are always trying to find new ways to help developers build great apps in as little time as possible. That's why today, we are thrilled to announce the release of our new Flutter Chat SDK and not one but two new Stream Flutter packages 🚀.
Our goal with this release is to help Flutter developers get up and running faster with Stream Chat while also expressing themselves in new and unique ways. Some of the highlights of this release are:
- New UI
- Release of two new Stream Flutter packages
- Improved API documentation
- Smaller, more lean low-level client
- New repository structure
New UI 🥳
This release ships an all-new UI. Everything from channel headers to message views has received a fresh new look. Like the previous version of our SDK, Stream's UI widgets are 100% customizable, and developers are free to theme these widgets to suit their application's needs.
To see what's possible with this new UI, check out a brand new sample app developed by our team.
Sample 🔗: https://github.com/GetStream/flutter-samples
Package 🔗: https://pub.dev/packages/stream_chat_flutter/versions/1.0.0-beta
Packages 📦
Stream Chat Flutter Core
Pub: https://pub.dev/packages/stream_chat_flutter_core
Every project is unique, and sometimes developers want the advantage of Flutter integration, such as automatic reconnects and convenient builders without the overhead of premade widgets and dependencies.
After listening to the community's feedback, we are thrilled to share our newest package, stream_chat_flutter_core
. This package retains everything developers love about our full Flutter SDK but does away with premade UI in favor of letting developers build their own.
To achieve this, we extracted the core business logic from our Stream Chat Flutter SDK and created new widgets and builders to make building custom UIs easier. The team is very excited for you to try this new package. Head over to the link below to get started.
🔗 : GetStream/stream-chat-flutter
Offline Storage
Pub: https://pub.dev/packages/stream_chat_persistence
Who doesn't love offline storage and caching? Caching is an integral part of any application. In the case of chats, offline storage allows developers to cache messages locally on a device and then load them later—even if the user is not online.
To help expand and give developers more flexibility in building apps with offline storage, we created a dedicated package developers can use or extend based on their needs.
🔗: GetStream/stream-chat-flutter
Low-Level Client
Pub: https://pub.dev/packages/stream_chat/versions/1.0.1-beta
Over the last three months, we've been making lots of small improvements to our Low Level (Dart) client. Our LLC was previously coupled with Offline storage and coupled to the Flutter SDK; however, this is no longer the case after today's update.
Developers can now utilize our Dart client on any platform supported by the Dart language, opening the door to various new platforms and apps powered by Stream Chat Dart.
🔗: GetStream/stream-chat-flutter
Repo 🤓
We decided early this year to move to an entirely new repository format with so many new packages. Starting today, our Github repo now uses a mono repo structure powered using the community package, Melos.
Like most Flutter plugin repos, our packages now live in a single place under the packages
directory. Consolidating our repositories helps us iterate and build new features faster and more efficiently while maintaining high-level code quality, automated checks, and control.
Github 🔗: https://github.com/GetStream/stream-chat-flutter
Come say hello 👋
As an open-source project, we welcome community feedback and pull requests. If you're new to Stream or a seasoned Stream developer, we encourage you to look at the code and file a bug for things you don't understand or features you'd like to see implemented.
Are you excited about our new Flutter update? Tell us about some of the projects you're building. Tweet us @getstream_io or @Nash0x7E2 on Twitter. We can't wait to see what you create.