The Quizzler Backend is a microservices-based backend system for the Quizzler quiz platform. It is designed for scalability, modularity, and ease of integration, supporting a wide range of quiz, user, and leaderboard features.
This repository contains the following core services:
- API Gateway: Central entry point for all client requests, routing, and cross-cutting concerns.
- Service Registry: Service discovery and registration for all microservices.
- User Auth Service: Handles user authentication, registration, and authorization.
- Question Service: Manages quiz questions and their types.
- Quiz Service: Manages quizzes, quiz creation, and assignment of questions.
- Participation Service: Tracks user participation, attempts, and scores.
- LeaderBoard Service: Aggregates and displays user rankings.
- BugReport Service: Handles bug reporting and management.
- Docker-kafka: Contains Docker Compose setup for Kafka and related infrastructure.
Each service has its own directory and detailed README.
- Java 17 or higher
- Maven 3.6+
- Docker & Docker Compose (for running infrastructure)
- Clone the repository
git clone https://github.com/Quizzler-Co/Quizzler_final_backend.git cd Quizzler_final_backend - Start infrastructure (Kafka, etc.)
cd Docker-kafka docker-compose up -d - Build and run each service
Or use Docker Compose if available.
cd <service-folder> ./mvnw clean install ./mvnw spring-boot:run
Quizzler_final_backend/
├── api-gateway/
├── BugReport-service/
├── LeaderBoard/
├── participation-service/
├── question-service/
├── Quiz/
├── service-registry/
├── user-auth/
├── Docker-kafka/
└── README.md
- Fork the repository
- Create a feature branch (
git checkout -b feature/your-feature) - Commit your changes
- Open a pull request
Below are screenshots from the running system:
This project is licensed under the Apache License 2.0 — see LICENSE.