* fix: fixed long system messages overflowing * fix: fixed long system messages overflowing * [UI-Kit] Refactor, add support for downloading attachments. Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * fix: header casing * [UI-Kit] Disable attachment download dialog pop using back button Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * stream_chat_flutter fix svg on web * [UI-Kit] Pop attachment download dialog in case of any error. Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * restore svg * feat: add pr title linter * fix test * fix client headers * update system message design * update gh token env var * add scopes * expose systemMessageBuilder in messagelistview * fix(ui): fix button size * add dispatch workflow * add dispatch workflow * update dispatch acton * add runson * fix ref * fix ref * update secret * specify repo * fix: list scroll keyboard behaviour (#304) * fix: Keyboard now closes by clicking on space or scrolling. * fix: Exposed system and normal message tap builders * fmt: dartfmt * feat: Add support for messages filter in `MessageListView` and `MessageListCore` (#303) * [MessageListView, MessageListCore] Add support for message filter Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * [UI-Kit -> Pubspec] Remove `stream_chat_flutter_core` relative import Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * add relative import * add relative import * remove svg for web * remove badge logic on web * style: Update for team lint (#297) * Update for team lint * fix tests * remove pedantic and sort deps * remove jiffy from system message Co-authored-by: Salvatore Giordano <salvatoregiordanoo@gmail.com> * add section highlighting sample app repo (#307) Co-authored-by: Salvatore Giordano <salvatoregiordanoo@gmail.com> * add null check to debounce * fix messagelistview loading errors * remove core relative import * fix: fixes message newline issue (#308) * fix: minor * fix: generate image thumbnails and use transparent image as placeholder for cached network images (#310) * update cdn handling * fix image attachment with new cdn * fix(ui): Fix message input permission request crash (#311) Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * fix(llc): update member presence and add skip_push to message (#314) * update member presence * add skip_push to message * fix tests * fix: Fixed shimmer overflow (#316) * fix dialogs * fix(llc): Fix attachment upload state uneven progress. (#315) * feat(llc): Add rate limiter functions. fix(llc): Fix attachment upload state uneven progress. Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * feat(llc): Export `async.dart` and `rate_limit.dart` Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * refactor(llc): Replace our `rate_limit` implementation with the dart port of js `lodash` to better handlw `cancel` and `flush` functions. Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * fix(UI-Kit): Make android example run on real devices Signed-off-by: Sahil Kumar <xdsahil@gmail.com> * fix offline behaviour Co-authored-by: Salvatore Giordano <salvatoregiordanoo@gmail.com> * feat: Introduce onAttachmentTap on messages attachment (#309) * introdce onAttachmentTap on message * correct indent * sdfsd Co-authored-by: Salvatore Giordano <salvatoregiordanoo@gmail.com> * feat: added customization options in main widgets (#312) * polish channelpreview customization options * polish channelheader customization options * polish messageinput customization options * polish threadheader customization options * polish channellistheader customization options * show the parent message if no messages in thread * fix edit message * fix channelinfo textstyle * fix review * fix useravatar * add ontitle tap to thread header * add custom message actions * add borderradius and button builder * add ontap to messageinput custom send button * fix bottom sheet * add doc * use placeholder image * add doc * fix listtile density * remove subtitle from ChannelListHeaderTheme.copyWith * add InputDecoration.merge extension * fix: use shimmer in images * fix: remove notification badge logic from the sdk and move it to sample app * fix import * fix: Method being called during build (#317) * method call bug fix * dartfmt * fix: show error messages as system and keep them in the message input (#319) * fix: pre release (#324) * use share_plus plugin * bump dependency versions * fix ui for web * unfocus messageinput only on commands * fix default error for messagesearchlistview * fix thumbnail animation * fix lint * ignore example in linter * update changelogs * fix lint * fix lint * update stream_chat pana min * add doc Co-authored-by: Sahil Kumar <xdsahil@gmail.com> Co-authored-by: Deven Joshi <deven9852@gmail.com> Co-authored-by: Neevash Ramdial (Nash) <nash@getstream.io> Co-authored-by: Nelson Nunes <nunes.nelson4@gmail.com>
3.4 KiB
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.
Sample apps and demos
Our team maintains a dedicated repository for fully-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.
Structure
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
Packages
We provide a variety of packages depending on the level of customization you want to achieve.
stream_chat
A pure Dart package that can be used on any Dart project. It provides a low-level client to access the Stream Chat service.
stream_chat_persistence
This package provides a persistence client for fetching and saving chat data locally. Stream Chat Persistence uses Moor as a disk cache.
stream_chat_flutter_core
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.
stream_chat_flutter
This library includes both a low-level chat SDK and a set of reusable and customizable UI components.
Flutter Chat Tutorial
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.
Example Apps
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.
