A dynamic web-based quiz application built using Django. This application allows users to attempt quizzes, tracks their performance, and provides detailed feedback on their answers.
-
User authentication (Login/Signup).
-
Real-time answer submission.
-
Automatic session tracking for quiz attempts.
-
Detailed result analysis including: * Total marks. * Number of correct and incorrect answers.
-
Secure and user-friendly interface.
-
Randomized question order to enhance test fairness.
- Backend: Django (Python)
- Frontend: HTML, CSS
- Database: SQLite (default Django database, can be replaced with PostgreSQL or MySQL)
git clone https://github.com/your-username/Quiz-App.git
cd quiz-app
- Python (>= 3.8)
- pip (Python package manager)
- Virtualenv (optional but recommended)
git clone https://github.com/your-username/Quiz-App.git
cd Quiz-Apppython -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver
Visit http://127.0.0.1:8000 to view the application.
- Login to the admin panel at http://127.0.0.1:8000/admin.
- Create quizzes, questions, and manage user sessions.
- Users can register, log in, and view available quizzes.
- Attempt a quiz and submit answers.
- View detailed results after quiz completion.
id: Primary key
name: Name of the quiz
numofques: Number of questions in the quiz
id: Primary key
quizid: Foreign key to Quiz
ques: The question text
optionA, optionB, optionC, optionD: Answer options
ans: Correct answer
marks: Marks for the question
id: Primary key
userid: Foreign key to User
quizid: Foreign key to Quiz
correct_ans, incorrect_ans, total_marks: Performance tracking
id: Primary key
sessionid: Foreign key to Session
ques: Question text
user_ans: User's selected answer
corr_ans: Correct answer
- Add a timer for quizzes.
- Include analytics for users to track progress.
- Leaderboard
- Implement question categories and difficulty levels.
- Mobile app integration.