mirror of
https://github.com/AdrianKuta/KahootQuiz.git
synced 2025-09-14 17:24:21 +02:00
feat: Implement initial project structure and network layer
This commit introduces the foundational structure of the Kahoot Quiz application and implements the core network layer. Key changes include: - Added new Gradle modules: `core:network`, `domain`, `model:data`, and `ui:quiz`. - Configured Detekt for static code analysis in the new modules. - Implemented Retrofit and Gson for network communication and JSON parsing. - Defined DTOs for the Kahoot quiz API response, splitting them into logical files (QuizResponseDto, CommonDtos, CoverDtos, QuestionDtos, MetadataDtos, ContentTagsDto) for better organization. - Created `QuizApi` interface with a GET request for fetching quiz data. - Added `QuizService` interface and its initial implementation `QuizServiceImpl`. - Set up Hilt for dependency injection in the network module, providing Retrofit and QuizApi instances. - Included a `sample_quiz.json` file for testing and development. - Added unit tests (`QuizResponseDtoParsingTest`) to verify the correct parsing of the sample JSON into DTOs. - Updated `.gitignore` to exclude additional generated files and IDE specific folders. - Modified `settings.gradle.kts` to include the new modules. - Updated `app/build.gradle.kts` to include dependencies on the new `ui:quiz` and `model:data` modules and removed unused dependencies.
This commit is contained in:
5
.gitignore
vendored
5
.gitignore
vendored
@@ -8,7 +8,7 @@
|
||||
/.idea/navEditor.xml
|
||||
/.idea/assetWizardSettings.xml
|
||||
.DS_Store
|
||||
/build
|
||||
build/
|
||||
/captures
|
||||
.externalNativeBuild
|
||||
.cxx
|
||||
@@ -16,4 +16,5 @@ local.properties
|
||||
|
||||
# Project exclude paths
|
||||
/build-logic/convention/build/
|
||||
/build-logic/convention/build/classes/kotlin/main/
|
||||
/build-logic/convention/build/classes/kotlin/main/
|
||||
/.idea/
|
||||
|
Reference in New Issue
Block a user