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.
- 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
Frontend
- React
- MathLive & KaTeX (math/chemistry rendering)
- Custom CSS
Backend
- Node.js
- Express
- MongoDB (Mongoose)
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
- Node.js (v16+ recommended)
- MongoDB (local instance or MongoDB Atlas)
git clone https://github.com/mirzamudassir1/assingment-application.git
cd assingment-applicationcd quizpro-backend
npm installCreate a .env file in quizpro-backend/ with:
MONGO_URI=your_mongodb_connection_string
PORT=5000
Run the backend:
node server.jscd ../quizpro
npm install
npm startThe 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).
- Deploy backend (Vercel)
- Connect deployed frontend to deployed backend
- Add authentication hardening
- Expand question types
Mirza Mudassir GitHub: @mirzamudassir1