This repository contains a microservices-based Quiz Application, split into several independent Spring Boot services:
Handles all operations related to quiz questions.
- Main packages:
Controller: Manages HTTP endpoints for questions.Dao: Data access layer for questions.Service: Business logic for question management.model: Data models (e.g.,Question,QuestionWrapper,Response).
- Entry point:
QuestionServiceApplication.java
Manages quizzes, including quiz creation and question assignment.
- Main packages:
Controller: Endpoints for quiz operations (QuizController,QuizDto).Dao: Data access for quizzes.Service: Quiz business logic.model: Models for quizzes and responses.
- Entry point:
QuizServiceApplication.java
Acts as the main application, possibly aggregating other services.
- Main packages:
Controller: Endpoints for both questions and quizzes.Dao: Data access for questions and quizzes.Service: Business logic for both domains.model: Shared models.
- Entry point:
QuizappApplication.java
Implements service discovery using Eureka.
- Entry point:
ServiceRegisteryApplication.java
Each service is a standalone Spring Boot application.
To run a service:
cd <service-folder>
./mvnw spring-boot:runExample:
cd question-service
./mvnw spring-boot:run- Java (Spring Boot)
- Maven for build management
- Eureka for service discovery
question-service/- Question microservicequiz-service/- Quiz microservicequizapp/- Main application (API gateway or aggregator)service-registery/- Eureka service registry
Below are example screens from the application:

