mirror of
				https://github.com/AdrianKuta/KahootQuiz.git
				synced 2025-11-04 02:43:40 +01: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:
		
							
								
								
									
										10
									
								
								core/network/config/detekt/detekt.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								core/network/config/detekt/detekt.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
			
		||||
# Deviations from defaults
 | 
			
		||||
formatting:
 | 
			
		||||
  TrailingCommaOnCallSite:
 | 
			
		||||
    active: true
 | 
			
		||||
    autoCorrect: true
 | 
			
		||||
    useTrailingCommaOnCallSite: true
 | 
			
		||||
  TrailingCommaOnDeclarationSite:
 | 
			
		||||
    active: true
 | 
			
		||||
    autoCorrect: true
 | 
			
		||||
    useTrailingCommaOnDeclarationSite: true
 | 
			
		||||
		Reference in New Issue
	
	Block a user