# Flutter Architecture Samples

##### A gallery of app architectures

Flutter provides a lot of flexibility in deciding how to organize and architect your apps. While this freedom is very valuable, it can also lead to apps with large classes, inconsistent naming schemes, as well as mismatching or missing architectures. These types of issues can make testing, maintaining and extending your apps difficult.

The Flutter Architecture Samples project demonstrates strategies to help solve or avoid these common problems. This project implements the same "Todos" app using different architectural concepts and tools.

Download Github

### Samples

- Vanilla Lifting State Up Web Demo
- InheritedWidget Web Demo
- ChangeNotifier + Provider Web Demo
- Freezed + Provider + Value Notifier Web Demo
- BLoC Web Demo
- Bloc Library Web Demo
- Mobx Web Demo
- Redux Web Demo
- "Simple" BLoC Example Web Demo
- MVI Web Demo
- scoped_model Web Demo
- signals Web Demo

### Supporting code

- Integration Tests
- Todos Repository

### Contributors

- Brian Egan
- David Marne
- Pascal Welsch
- Larry King
- Frank Harper
- Pavel Shilyagov
- Maurice McCabe
- Leo Cavalcante
- Greg Perry
- Felix Angelov
- Francesco Mineo
- Pavan Podila
- Kushagra Saxena
- Mellati Fateh

© 2025 Brian Egan and contributors.