A new Flutter project demonstrating clean architecture principles using the PokeAPI.
This project is a Flutter application that showcases the implementation of clean architecture principles. It uses the PokeAPI to fetch and display data about Pokémon.
In addition to clean architecture, this project also follows a feature-first architecture approach. This means that the codebase is organized by features rather than by technical layers. Each feature has its own folder containing all the necessary components (UI, state management, use cases, repositories, etc.) to implement that feature. This approach makes the codebase more modular and easier to maintain.
- Fetch and display a list of Pokémon
- View detailed information about each Pokémon
- Search for Pokémon by name
- Responsive design for both mobile and web platforms
The project follows the clean architecture pattern, which divides the codebase into three main layers:
- Presentation Layer: Contains the UI code and the state management logic.
- Domain Layer (Business layer): Contains the business logic and the use cases.
- Data Layer: Contains the data sources and repositories.
To get started with this project, follow these steps:
- Clone the repository:
git clone https://github.com/yourusername/clean_architecture_demo_poke_api.git
- Navigate to the project directory:
cd clean_architecture_demo_poke_api
- Install the dependencies:
flutter pub get
To run the application, use the following command:
flutter run