Clean Architecture for Flutter

This a sample app that implement Uncle Bob’s Clean Architecture in Flutter.

There are 3 main Layers to help separate the code:

1- Domain.
2- Data.
3- Presentation.

Domain Layer:
defines the business logic of the application and contains UseCases, Domain Entities, and Repository Interfaces.

Data Layer:
responsible for data retrieval and contains APIs, Local Storage, Data objects (Request, Response and DB objects), and the Repository Implementation.

Presentation
the UI of the application and contains Screens, Widgets and Presentation logic.

Libraries

References

Support

If you liked the repo giving it a Star ⭐️.

Before you build this App from source code, please get an ApiKey from newsapi.org
and add your ApiKey in constants.dart file.

GitHub

https://github.com/MahmoudElbokl/flutter_clean_arch_sample_demo