android-compose-clean-architecture-sample
π° Production-ready Android app demonstrating Clean Architecture with multi-module setup. Built with Jetpack Compose, Material 3, MVI pattern, Hilt DI, Retrofit, Room, and Kotlin Coroutines. Perfect for learning enterprise Android development best practices.
νμΌ νμκΈ°
μ΅μ’ λ²μ λ€μ΄λ‘λ (.zip)- android-ci.yml
- ComponentsTest.kt
- HomeScreenTest.kt
- LoginScreenTest.kt
- RecipeDetailScreenTest.kt
- ExampleInstrumentedTest.kt
- BakingNavHost.kt
- BakingApplication.kt
- MainActivity.kt
- Color.kt
- Theme.kt
- Type.kt
- MainActivity.kt
- MyData.kt
- MySingleton.java
- ic_launcher_background.xml
- ic_launcher_foreground.xml
- splash_background.xml
- ic_launcher.xml
- ic_launcher_round.xml
- ic_launcher.webp
- ic_launcher_round.webp
- ic_launcher.webp
- ic_launcher_round.webp
- ic_launcher.webp
- ic_launcher_round.webp
- ic_launcher.webp
- ic_launcher_round.webp
- ic_launcher.webp
- ic_launcher_round.webp
- colors.xml
- strings.xml
- themes.xml
- backup_rules.xml
- data_extraction_rules.xml
- AndroidManifest.xml
- ExampleUnitTest.kt
- .gitignore
- build.gradle.kts
- proguard-rules.pro
- BaseUseCase.kt
- DispatcherModule.kt
- FlowExtensions.kt
- Result.kt
- MainDispatcherRule.kt
- AndroidManifest.xml
- ResultTest.kt
- build.gradle.kts
- RecipeDao.kt
- DatabaseModule.kt
- RecipeEntity.kt
- RecipeWithDetails.kt
- BakingDatabase.kt
- AndroidManifest.xml
- build.gradle.kts
- NetworkResponseAdapter.kt
- AuthApi.kt
- RecipesApi.kt
- NetworkModule.kt
- AuthInterceptor.kt
- NetworkDelayInterceptor.kt
- AuthModels.kt
- NetworkResponse.kt
- RecipeDto.kt
- AndroidManifest.xml
- build.gradle.kts
- encode_keys.py
- CMakeLists.txt
- native-keys.cpp
- SecurityModule.kt
- ApiKeyProvider.kt
- EncryptedPreferencesManager.kt
- NativeKeyProvider.kt
- SecureTokenManager.kt
- AndroidManifest.xml
- build.gradle.kts
- consumer-rules.pro
- proguard-rules.pro
- README.md
- BakingButton.kt
- BakingTextField.kt
- ErrorView.kt
- LoadingIndicator.kt
- RecipeCard.kt
- Color.kt
- Theme.kt
- Type.kt
- AndroidManifest.xml
- build.gradle.kts
- architecture.md
- compose_guidelines.md
- interview_questions.md
- modules.md
- networking.md
- performance.md
- pr_review_guide.md
- security.md
- testing.md
- LocalTimerDataSource.kt
- TimerRepositoryImpl.kt
- CookingTimerModule.kt
- CookingTimer.kt
- TimerRepository.kt
- GetTimerPresetsUseCase.kt
- GetTimersUseCase.kt
- TimerControlUseCase.kt
- CookingTimerActivity.kt
- BaseFragment.kt
- CreateTimerFragment.kt
- CreateTimerUiState.kt
- CreateTimerViewModel.kt
- TimerDetailFragment.kt
- TimerDetailUiState.kt
- TimerDetailViewModel.kt
- TimerListAdapter.kt
- TimerListFragment.kt
- TimerListUiState.kt
- TimerListViewModel.kt
- PresetsAdapter.kt
- TimerPresetsFragment.kt
- TimerPresetsUiState.kt
- TimerPresetsViewModel.kt
- slide_in_left.xml
- slide_in_right.xml
- slide_out_left.xml
- slide_out_right.xml
- bg_badge.xml
- bg_circle.xml
- ic_add.xml
- ic_baking.xml
- ic_boiling.xml
- ic_delete.xml
- ic_error.xml
- ic_grilling.xml
- ic_pause.xml
- ic_play.xml
- ic_presets.xml
- ic_reset.xml
- ic_resting.xml
- ic_roasting.xml
- ic_simmering.xml
- ic_timer_empty.xml
- activity_cooking_timer.xml
- fragment_create_timer.xml
- fragment_timer_detail.xml
- fragment_timer_list.xml
- fragment_timer_presets.xml
- item_preset.xml
- item_timer.xml
- menu_timer_list.xml
- cooking_timer_nav_graph.xml
- colors.xml
- strings.xml
- themes.xml
- AndroidManifest.xml
- FakeTimerRepository.kt
- CookingTimerTest.kt
- CreateTimerUseCaseTest.kt
- GetTimersUseCaseTest.kt
- TimerControlUseCaseTest.kt
- CreateTimerViewModelTest.kt
- TimerListViewModelTest.kt
- build.gradle.kts
- README.md
- FakeRecipeDataSource.kt
- RecipeMapper.kt
- RecipeRepositoryImpl.kt
- HomeModule.kt
- Recipe.kt
- RecipeRepository.kt
- GetRecipesUseCase.kt
- SearchRecipesUseCase.kt
- ToggleFavoriteUseCase.kt
- HomeScreen.kt
- HomeUiState.kt
- HomeViewModel.kt
- AndroidManifest.xml
- FakeRecipeRepository.kt
- RecipeTest.kt
- GetRecipesUseCaseTest.kt
- SearchRecipesUseCaseTest.kt
- ToggleFavoriteUseCaseTest.kt
- HomeViewModelTest.kt
- build.gradle.kts
- AuthRepositoryImpl.kt
- LoginModule.kt
- LoginResult.kt
- AuthRepository.kt
- LoginUseCase.kt
- ValidateEmailUseCase.kt
- ValidatePasswordUseCase.kt
- LoginScreen.kt
- LoginUiState.kt
- LoginViewModel.kt
- AndroidManifest.xml
- FakeAuthRepository.kt
- LoginUseCaseTest.kt
- ValidateEmailUseCaseTest.kt
- ValidatePasswordUseCaseTest.kt
- LoginViewModelTest.kt
- build.gradle.kts
- RecipeDetailScreen.kt
- RecipeDetailUiState.kt
- RecipeDetailViewModel.kt
- AndroidManifest.xml
- RecipeDetailViewModelTest.kt
- build.gradle.kts
- gradle-wrapper.jar
- gradle-wrapper.properties
- libs.versions.toml
- .gitignore
- build.gradle.kts
- gradle.properties
- gradlew
- gradlew.bat
- LICENSE
- README.md
- settings.gradle.kts
// repository documentation
Was this content helpful?
(0 ratings)
