-
Certifique-se de ter o Flutter instalado: https://flutter.dev/
-
Faça o clone do projeto e vá para a pasta raiz.
-
Execute o comando
flutter pub get
para baixar as dependências. -
Certifique-se de ter um emulador iniciado ou um celular plugado com as Ferramentas de Desenvolver ativadas.
-
Pronto. Para rodar em modo debug, execute o comando
flutter run
ou em modo releaseflutter run --release
. Para gerar o apk, executeflutter build apk
.
- Flutter Modular [https://github.com/Flutterando/modular] para Injeção de Dependências.
- Mobx [https://pub.dev/packages/mobx] para state management.
- Slidy [https://github.com/Flutterando/slidy] como ferramenta.
- Dio [https://pub.dev/packages/dio] para requisições HTTP.
Gosto muito da estruturação abordada no Modular (inspirado no Angular) e da simplicidade ao lidar com reatividade com o Mobx. Slidy não faz parte da implementação, mas é uma ferramente que agiliza bastante o processo de criação de Pages, Modules, etc.. A comunidade do Flutterando tem feito um ótimo trabalho na manutenção dessas ferramentas.
Tenho estudado cada vez mais organização e estruturação de projeto de forma que seja mantível e escalável. O Clean Architecture promove a implementação independente de cada camada da aplicação facilitando a manutenção do projeto.
Referências:
- Flutter, TDD, Clean Architecture, SOLID e Design Patterns [https://www.udemy.com/course/flutter-com-mango/]
- Flutter TDD Clean Architecture Course [https://www.youtube.com/watch?v=KjE2IDphA_U&list=PLB6lc7nQ1n4iYGE_khpXRdJkJEp9WOech]
- Clean Dart [https://github.com/Flutterando/Clean-Dart]
├── lib
│ ├── app
│ │ ├── shared
│ │ └── modules
│ ├── core
│ ├── data
│ │ ├── repositories
│ │ ├── models
│ │ └── http
│ ├── domain
│ │ ├── entities
│ │ ├── helpers
│ │ ├── repositories
│ │ └── usecases
│ ├── infra
│ │ └── dio
│ └── shared
Obs.: Optei por chamar de data
o que na imagem é chamado de infra
e de infra
o que é chamado de external
.
Este projeto foi criado para estudo, sinta-se a vontade para testá-lo e utilizá-lo.