- Flutter v2.2.3
- Clean Architecture
- Presentation impl with MVVM use Bloc
- Pipline verify code PR
- Unit test > 90%
- MVVM
- Dart rule analyze: pedantic
- State management: flutter_bloc
- Dependency injection: get_it
- Network: retrofit
- Unit test: Mockito
- CI/CD: pipeline lint use github action
Apply Clean Architecture + MVVM (with ViewModel used to replace the traditional ViewModel).
|----------------- Layers ------------------|
| Presentations | Doamin | Data Layer |
|:-------------------------------------------:|
|-------------------------- Actual ---------------------------|
| Presentations | Doamin | Data |
|:-------------------------------------------------------------:|
| UI <--> ViewModel <--> UseCase <--> Repository <--> API/Local|
|:-------------------------------------------------------------:|
|:---- Entity ----|---- Model --------:|
|:-------------------------------------------------------------:|
- This is the main interface of the application. It is classified into 3 main categories as:
- Screen
- Epic
- Shared UI
- flavor native
- localization
Visual code Extension:
flutter run
flutter build apk
flutter build ios
flutter build appbundle
./gradlew signingReport
flutter pub run flutter_launcher_icons:main
flutter packages pub run build_runner build --delete-conflicting-outputs
sh run_test.sh