v3.2.1table_calendar
Highly customizable, feature-packed calendar widget for Flutter.
Minimalist Flutter Todo App, built using BLoC pattern
v3.2.1Highly customizable, feature-packed calendar widget for Flutter.
Value types with builders, Dart classes as enums, and serialization. This library is the runtime dependency.
Value types with builders, Dart classes as enums, and serialization. This library is the dev dependency.
Immutable collections based on the SDK collections. Each SDK collection class is split into a new immutable collection class and a corresponding mutable builder class.
A library providing a tuple data structure.
Easy to use, reliable and lightweight gesture detector for Flutter apps. Exposes simple API to react to basic gestures.
v0.2.1Easy to use text widget for Flutter apps, which converts inlined URLs into clickable links. Allows custom styling.
The best swiper(carousel) for flutter, with multiple layouts, infinite loop. Compatible with Android & iOS.
Flutter plugin for discovering the state of the soft-keyboard visibility on Android and iOS.
{"sdk":"flutter"}{"sdk":"flutter"}^0.21.0^6.3.2^4.2.0^1.14.11^0.6.0^0.6.1+11^0.4.2^2.2.1^0.1.1^0.1.3^1.1.6^0.5.1+2^0.5.2^1.0.2{"sdk":"flutter"}^1.7.1^6.8.2English project snapshot. Visit GitHub for the latest content.
| https://github.com/aleksanderwozniak/deer/blob/assets/deer.gif | https://github.com/aleksanderwozniak/deer/blob/assets/indi_list.png | https://github.com/aleksanderwozniak/deer/blob/assets/gold_shp_edt.png | https://github.com/aleksanderwozniak/deer/blob/assets/mint_wrk_det.png |
Deer uses BLoC (Business Logic Component) pattern to manage app state. If you want to use Streams in your Flutter project, then I think this is the way to go. BLoC plays exceptionally well with Flutter's reactive nature, especially since Flutter has built-in StreamBuilder widget.
Each screen is splitted into 4 files:
Instead of calling setState() in screen file, an action is pushed to bloc's input Stream<Action>.
Then, bloc resolves that action and updates the output Stream<State>. Every state update is listened to inside screen with StreamBuilder, which updates the UI when needed. This way we achieve clear separation of concerns.
Usually with BLoC, Sink is used for input Stream, and BehaviorSubject for output Stream.
Check those resources for more details on the pattern:
flutter packages pub run build_runner build --delete-conflicting-outputs