Skip to content

dhrupad17/Monolithic-Backend-QuizApp-UsingSpringBoot3.3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Monolithic Backend Quiz Application

Project Description

The Monolithic Backend Quiz Application is a comprehensive solution designed to manage quiz questions and quizzes efficiently. It operates as a single, unified system, following a layered architecture pattern that includes the Model, Repository, Service, and Controller layers. This application provides functionalities to add, update, delete, and retrieve quiz questions, as well as to create and manage quizzes. It supports multiple categories, such as Java and Python, and facilitates a seamless user experience by randomly selecting questions based on the chosen category. The application also calculates quiz results and provides feedback in percentage terms.

Project Features

  • Question Management

    • Add Questions: Allows users to add new questions with options, correct answers, difficulty levels, and categories.
    • Update Questions: Enables modification of existing questions, including their options and correct answers.
    • Delete Questions: Provides the capability to remove questions from the database.
    • Get All Questions: Retrieves a list of all questions stored in the system.
    • Get Questions by Category: Fetches questions based on the specified category (e.g., Java, Python).
  • Quiz Management

    • Create Quiz: Facilitates the creation of a new quiz by specifying the category, number of questions, and quiz title. Questions are randomly selected based on the category.
    • Get Quiz Questions: Retrieves all questions included in a specific quiz by its ID.
  • Quiz Interaction

    • Submit Quiz: Allows users to submit their answers for a quiz. The submission process evaluates responses and calculates the number of correct answers.
    • Calculate Result: Computes the percentage accuracy of the quiz based on the number of correct answers and total questions, providing feedback to users.
  • Random Question Selection

    • Randomly Select Questions: Ensures that the questions included in a quiz are picked randomly from the pool of questions in the selected category, enhancing the variety of quiz experiences.

This Monolithic Backend Quiz Application is designed to offer a robust and scalable solution for managing quizzes and questions and I have converted it into Microservices Backend Application. Check Here

Tools Used:

IntelliJ IDEA Git Java Maven PostgreSQL Postman Spring
IntelliJ IDEA Git Java Maven PostgreSQL Postman SpringBoot

Project Directory Structure:

image

Database Directory Structure:

image

Application Functionality

Feature Description Screenshot
Add Question Allows users to add new questions with options, correct answers, difficulty levels, and categories. image
Update Question Enables modification of existing questions. image
Delete Question Provides the capability to remove questions from the database. image
Get All Questions Retrieves a list of all questions stored in the system. image
Get Questions by Category Fetches questions based on the specified category (e.g., Java, Python). image
Create Quiz Facilitates the creation of a new quiz by specifying the category, number of questions, and quiz title. image
Get Quiz Questions Retrieves all questions included in a specific quiz by its ID. image
**Submit Quiz and Calculate Result ** Allows users to submit their answers for a quiz and calculates the result and Computes the percentage accuracy of the quiz and provides feedback. image

About

This is the Complete backend Functionality of a Monolithic Quiz App made using Spring Boot 3.3 version.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages