Este é um projeto de aplicativo de loja desenvolvido em Flutter. O aplicativo permite que os usuários naveguem por categorias de produtos, visualizem detalhes dos produtos e adicionem produtos à lista de desejos.
O projeto segue a arquitetura limpa (Clean Architecture) com BloC (Business Logic Component), que facilita a separação entre a lógica de negócios e a interface, permitindo um fluxo de dados reativo e previsível.
- Config: Contém classes que vão cuidar da configuração base do projeto
- Ui: Contém as pages e cubits que gerenciam a lógica de apresentação.
- Domain: Contém as entidades e use cases que representam as regras de negócio.
- Data: Contém as implementações dos repositórios e datasources.
- Utils: Classes que serão utilizadas em várias features
get_it
: Biblioteca para gerenciamento de estado e navegação.dartz
: Biblioteca para manipulação de tipos funcionais, comoEither
.flutter_bloc
: Biblioteca para gerenciamento de estado.dio
: Biblioteca utilizada pra requests httpgo_router
: Biblioteca para gerenciamento de rotasshared_preferences
: Biblioteca para armazenamento local
Siga os passos abaixo para configurar e executar o projeto localmente.
- Flutter (versão mínima recomendada: 3.27.0)
- Dart
- Android Studio/Xcode (para emuladores e builds nativos)
- Um dispositivo físico ou emulador configurado
- Clone o repositório:
git clone https://github.com/ymcdeveloper/my_products.git && cd my_products
flutter pub get
flutter run