This is an App with Auth Functions like Login and Register. All API using reqres.in.
This app also implementing Flutter Clean Architecture with TDD.
light-theme.mp4
dark-theme.mp4
Technology | Recommended Version | Installation Guide |
---|---|---|
Flutter | v3.10.x | Flutter Official Docs |
Dart | v3.0.x | Installed automatically with Flutter |
- Clone this project
- Run
flutter pub get
- Run
flutter gen-l10n
to generate localization files - Run
flutter pub run build_runner build --delete-conflicting-outputs
to generate freezes files - Run
flutter run --flavor stg -t lib/main.dart --dart-define-from-file .env.stg.json
for staging or - Run
flutter run --flavor prd -t lib/main.dart --dart-define-from-file .env.prd.json
for production - Run Test
flutter test
- To generate launcher icon based on Flavor
dart run flutter_launcher_icons
- To generate mock class
dart pub run build_runner build
- BLoC State Management
- Clean Architecture with TDD
- Unit Test
- Widget Test
- BLoC test
- Theme Configuration:
System, Light, Dark
- Multi-Language:
English, Bahasa
- Login, Register Example
- Pagination Example
- Autofill Username and Password
- Integration Test
- Implement multi-flavor
- Implement Go Router
574ae4cc-e3a9-4755-8494-81bfe8763e00.mp4
Architecture Proposal by Resocoder
lib
โโโ config.dart
โโโ core
โ โโโ api
โ โ โโโ api.dart
โ โ โโโ dio_client.dart
โ โ โโโ dio_interceptor.dart
โ โ โโโ isolate_parser.dart
โ โ โโโ list_api.dart
โ โโโ app_route.dart
โ โโโ core.dart
โ โโโ core_mapper.dart
โ โโโ error
โ โ โโโ error.dart
โ โ โโโ exceptions.dart
โ โ โโโ failure.dart
โ โโโ localization
โ โ โโโ generated
โ โ โ โโโ strings.dart
โ โ โ โโโ strings_en.dart
โ โ โ โโโ strings_id.dart
โ โ โโโ intl_en.arb
โ โ โโโ intl_id.arb
โ โ โโโ l10n.dart
โ โ โโโ localization.dart
โ โโโ resources
โ โ โโโ dimens.dart
โ โ โโโ images.dart
โ โ โโโ palette.dart
โ โ โโโ resources.dart
โ โ โโโ styles.dart
โ โโโ usecase
โ โ โโโ usecase.dart
โ โโโ widgets
โ โโโ button.dart
โ โโโ button_notification.dart
โ โโโ button_text.dart
โ โโโ circle_image.dart
โ โโโ color_loaders.dart
โ โโโ drop_down.dart
โ โโโ empty.dart
โ โโโ loading.dart
โ โโโ my_appbar.dart
โ โโโ parent.dart
โ โโโ spacer_h.dart
โ โโโ spacer_v.dart
โ โโโ text_f.dart
โ โโโ toast.dart
โ โโโ widgets.dart
โโโ dependencies_injection.dart
โโโ features
โ โโโ auth
โ โ โโโ auth.dart
โ โ โโโ data
โ โ โ โโโ data.dart
โ โ โ โโโ datasources
โ โ โ โ โโโ auth_remote_datasources.dart
โ โ โ โ โโโ datasources.dart
โ โ โ โโโ models
โ โ โ โ โโโ login_response.dart
โ โ โ โ โโโ login_response.freezed.dart
โ โ โ โ โโโ login_response.g.dart
โ โ โ โ โโโ models.dart
โ โ โ โ โโโ register_response.dart
โ โ โ โ โโโ register_response.freezed.dart
โ โ โ โ โโโ register_response.g.dart
โ โ โ โโโ repositories
โ โ โ โโโ auth_repository_impl.dart
โ โ โ โโโ repositories.dart
โ โ โโโ domain
โ โ โ โโโ domain.dart
โ โ โ โโโ entities
โ โ โ โ โโโ entities.dart
โ โ โ โ โโโ login.dart
โ โ โ โ โโโ login.freezed.dart
โ โ โ โ โโโ register.dart
โ โ โ โ โโโ register.freezed.dart
โ โ โ โโโ repositories
โ โ โ โ โโโ auth_repository.dart
โ โ โ โ โโโ repositories.dart
โ โ โ โโโ usecases
โ โ โ โโโ post_login.dart
โ โ โ โโโ post_login.freezed.dart
โ โ โ โโโ post_login.g.dart
โ โ โ โโโ post_register.dart
โ โ โ โโโ post_register.freezed.dart
โ โ โ โโโ post_register.g.dart
โ โ โ โโโ usecases.dart
โ โ โโโ pages
โ โ โโโ login
โ โ โ โโโ cubit
โ โ โ โ โโโ auth_cubit.dart
โ โ โ โ โโโ auth_cubit.freezed.dart
โ โ โ โ โโโ auth_state.dart
โ โ โ โ โโโ cubit.dart
โ โ โ โโโ login.dart
โ โ โ โโโ login_page.dart
โ โ โโโ pages.dart
โ โ โโโ register
โ โ โโโ cubit
โ โ โ โโโ cubit.dart
โ โ โ โโโ register_cubit.dart
โ โ โ โโโ register_cubit.freezed.dart
โ โ โ โโโ register_state.dart
โ โ โโโ register.dart
โ โ โโโ register_page.dart
โ โโโ features.dart
โ โโโ general
โ โ โโโ general.dart
โ โ โโโ pages
โ โ โโโ main
โ โ โ โโโ main.dart
โ โ โ โโโ main_page.dart
โ โ โ โโโ menu_drawer.dart
โ โ โโโ pages.dart
โ โ โโโ settings
โ โ โ โโโ cubit
โ โ โ โ โโโ cubit.dart
โ โ โ โ โโโ settings_cubit.dart
โ โ โ โโโ settings.dart
โ โ โ โโโ settings_page.dart
โ โ โโโ splashscreen
โ โ โโโ splash_screen_page.dart
โ โ โโโ splashscreen.dart
โ โโโ users
โ โโโ data
โ โ โโโ data.dart
โ โ โโโ datasources
โ โ โ โโโ datasources.dart
โ โ โ โโโ user_remote_datasources.dart
โ โ โโโ models
โ โ โ โโโ models.dart
โ โ โ โโโ users_response.dart
โ โ โ โโโ users_response.freezed.dart
โ โ โ โโโ users_response.g.dart
โ โ โโโ repositories
โ โ โโโ repositories.dart
โ โ โโโ users_repository_impl.dart
โ โโโ domain
โ โ โโโ domain.dart
โ โ โโโ entities
โ โ โ โโโ entities.dart
โ โ โ โโโ users.dart
โ โ โ โโโ users.freezed.dart
โ โ โโโ repositories
โ โ โ โโโ repositories.dart
โ โ โ โโโ users_repository.dart
โ โ โโโ usecases
โ โ โโโ get_users.dart
โ โ โโโ get_users.freezed.dart
โ โ โโโ get_users.g.dart
โ โ โโโ usecases.dart
โ โโโ pages
โ โ โโโ dashboard
โ โ โ โโโ cubit
โ โ โ โ โโโ cubit.dart
โ โ โ โ โโโ users_cubit.dart
โ โ โ โ โโโ users_cubit.freezed.dart
โ โ โ โ โโโ users_state.dart
โ โ โ โโโ dashboard.dart
โ โ โ โโโ dashboard_page.dart
โ โ โโโ pages.dart
โ โโโ users.dart
โโโ lzyct_app.dart
โโโ main_prd.dart
โโโ main_stg.dart
โโโ utils
โโโ ext
โ โโโ context.dart
โ โโโ ext.dart
โ โโโ string.dart
โ โโโ text_theme.dart
โโโ helper
โ โโโ common.dart
โ โโโ constant.dart
โ โโโ data_helper.dart
โ โโโ data_helper.freezed.dart
โ โโโ go_router_refresh_stream.dart
โ โโโ helper.dart
โโโ services
โ โโโ firebase
โ โ โโโ firebase.dart
โ โ โโโ firebase_crashlogger.dart
โ โ โโโ firebase_services.dart
โ โโโ hive
โ โ โโโ hive.dart
โ โ โโโ main_box.dart
โ โโโ services.dart
โโโ utils.dart
test
โโโ features
โ โโโ auth
โ โ โโโ data
โ โ โ โโโ datasources
โ โ โ โ โโโ models
โ โ โ โ โ โโโ login_response_test.dart
โ โ โ โ โ โโโ register_response_test.dart
โ โ โ โ โโโ repositories
โ โ โ โ โโโ auth_remote_datasources_test.dart
โ โ โ โโโ repositories
โ โ โ โโโ auth_repository_impl_test.dart
โ โ โโโ domain
โ โ โ โโโ usecases
โ โ โ โโโ post_login_test.dart
โ โ โ โโโ post_register_test.dart
โ โ โโโ pages
โ โ โโโ login
โ โ โ โโโ cubit
โ โ โ โ โโโ auth_cubit_test.dart
โ โ โ โ โโโ auth_cubit_test.mocks.dart
โ โ โ โ โโโ auth_state_test.dart
โ โ โ โโโ login_page_test.dart
โ โ โโโ register
โ โ โโโ cubit
โ โ โ โโโ register_cubit_test.dart
โ โ โ โโโ register_cubit_test.mocks.dart
โ โ โ โโโ register_state_test.dart
โ โ โโโ register_page_test.dart
โ โโโ general
โ โ โโโ pages
โ โ โโโ settings
โ โ โโโ cubit
โ โ โ โโโ settings_cubit_test.dart
โ โ โโโ settings_page_test.dart
โ โโโ users
โ โโโ data
โ โ โโโ datasources
โ โ โ โโโ models
โ โ โ โ โโโ users_response_test.dart
โ โ โ โโโ repositories
โ โ โ โโโ users_remote_datasources_test.dart
โ โ โโโ repositories
โ โ โโโ users_repository_impl_test.dart
โ โโโ domain
โ โ โโโ usecases
โ โ โโโ get_users_test.dart
โ โโโ pages
โ โโโ dashboard
โ โโโ cubit
โ โ โโโ users_cubit_test.dart
โ โ โโโ users_cubit_test.mocks.dart
โ โ โโโ users_state_test.dart
โ โโโ dashboard_page_test.dart
โโโ helpers
โโโ fake_path_provider_platform.dart
โโโ json_reader.dart
โโโ paths.dart
โโโ stubs
โ โโโ list_user_empty_response.json
โ โโโ list_user_response.json
โ โโโ login_success_response.json
โ โโโ login_unsuccessful_response.json
โ โโโ register_success_response.json
โ โโโ register_unsuccessful_response.json
โโโ test_mock.dart
โโโ test_mock.mocks.dart