Skip to content

bishal216/AssessmentPortal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AssessmentPortal

Python Django Status

⚠️ This project is no longer maintained. It was developed as a minor project and is archived as-is.

A web-based assessment portal for teachers and students. Teachers can create MCQ-based tests from question banks, schedule them, and export results. Students can log in, take tests, and review their performance after the test period ends.


👥 User Roles

  • Teacher — Create question banks, configure tests, schedule tests, manage eligible students, export results
  • Student — Take assigned tests, view scores and mistakes after the test period

✨ Features

  • MCQ-based tests drawn randomly (but deterministically) from a question bank
  • Question subsections with configurable minimum question requirements
  • Tests assignable to sections/groups or individual students
  • Scheduled tests with a defined start time, end time, and duration
  • Teacher dashboard with per-student results
  • Export results as CSV or printable PDF
  • Students can review incorrect answers after the test period
  • Custom 404/500 error pages

⚙️ Setup

  1. Clone the repository

    git clone https://github.com/your-username/AssessmentPortal.git
    cd AssessmentPortal
  2. Create and activate a virtual environment

    python -m venv venv
    venv\Scripts\activate        # Windows
    source venv/bin/activate     # macOS/Linux
  3. Install dependencies

    pip install --upgrade pip setuptools wheel
    pip install -r requirements.txt

▶️ Running the Project

python manage.py makemigrations
python manage.py migrate
python manage.py loaddata fixtures/data.json   # optional seed data
python manage.py createsuperuser
python manage.py runserver

Visit http://127.0.0.1:8000

Seed data credentials (after loaddata):

teacher1 / pass1234
student1 / pass1234
student2 / pass1234

Passwords must be set manually after loading fixtures — see setup notes in the codebase.


📦 Dependencies

Package Purpose
Django 5.2 Web framework
django-extensions Dev utilities
xhtml2pdf HTML → PDF export

Full list in requirements.txt.


⚠️ Known Limitations

  • SECRET_KEY is hardcoded — not suitable for production
  • No email-based password reset
  • No pagination on large result/question tables
  • Subsection minimum validation not enforced at the form level in admin

This project was built as a minor academic project and is archived as-is. No further development is planned.

About

Automated MCQ Assessment Taker

Topics

Resources

Stars

Watchers

Forks

Contributors