Deer

Minimalist Todo Planner app built around the idea of efficiency and clean aesthetic.

Awesome Flutter
## Showcase
Get it on Google Play
## Development 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: - actions - bloc - screen (UI itself) - state Instead of calling `setState()` in screen file, an action is pushed to bloc's input `Stream`. Then, bloc resolves that action and updates the output `Stream`. 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: - https://youtu.be/PLHln7wHgPE - https://youtu.be/RS36gBEp8OI #### Using built_value ``` flutter packages pub run build_runner build --delete-conflicting-outputs ```