Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QuizPro

QuizPro is a full-stack MERN exam management platform built for creating, scheduling, and administering online exams — with first-class support for questions requiring mathematical and chemical notation.

✨ Features

  • Custom Rich Text Editor — Purpose-built editor (powered by MathLive & KaTeX) supporting matrices, fractions, trigonometric/logarithmic functions, chemical formulas, and other LaTeX-rendered content that standard editors can't handle
  • Exam Creation & Scheduling — Admins can create exams, add questions, and schedule them for specific students
  • Student Portal — Dedicated login and dashboard for students to view and take assigned exams
  • Admin Dashboard — Manage exams, questions, student allocation, and view reports
  • Reports — Track and review exam performance
  • Special Character & Symbol Support — Dedicated symbol panels (basic, sets, and more) for quick insertion of scientific notation

🏗️ Tech Stack

Frontend

  • React
  • MathLive & KaTeX (math/chemistry rendering)
  • Custom CSS

Backend

  • Node.js
  • Express
  • MongoDB (Mongoose)

📁 Project Structure

quizpro-application/
├── quizpro/            # Frontend (React)
│   ├── public/
│   └── src/
│       ├── components/ # Editor, ribbons, modals, symbol panels
│       └── pages/       # Login, Dashboard, CreateExam, TakeExam, Reports, etc.
│
└── quizpro-backend/    # Backend (Node.js + Express + MongoDB)
    ├── models/          # Exam, Question, Schedule, Student
    ├── routes/          # exams, questions, schedules, students
    └── server.js

🚀 Getting Started

Prerequisites

  • Node.js (v16+ recommended)
  • MongoDB (local instance or MongoDB Atlas)

1. Clone the repository

git clone https://github.com/mirzamudassir1/assingment-application.git
cd assingment-application

2. Set up the backend

cd quizpro-backend
npm install

Create a .env file in quizpro-backend/ with:

MONGO_URI=your_mongodb_connection_string
PORT=5000

Run the backend:

node server.js

3. Set up the frontend

cd ../quizpro
npm install
npm start

The frontend will run on http://localhost:3000 and connect to the backend at http://localhost:5000 (update the API base URL in the frontend config if your backend runs elsewhere).

📌 Roadmap

  • Deploy backend (Vercel)
  • Connect deployed frontend to deployed backend
  • Add authentication hardening
  • Expand question types

👤 Author

Mirza Mudassir GitHub: @mirzamudassir1

About

QuizPro is a full-stack MERN exam management platform with a custom rich-text editor supporting math (MathLive) and chemistry notation, built for creating, administering, and taking online exams with complex scientific content

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages