A web-based platform designed to enhance exam preparation by providing a comprehensive question bank for students. With features like quiz creation, performance tracking, and administrative management, Virtual Question Bank serves both students and educators in a streamlined, user-friendly environment.
- Student Access: Allows students to register, take quizzes, view results, and track their performance.
- Question Bank: Supports multiple question types (MCQs and descriptive) organized by subject and difficulty level.
- Admin & Moderator Management: Admins and moderators can add, review, and approve questions.
- Reporting & Analytics: Provides analytics and generates reports for performance insights.
- User Feedback & Support: Allows students to provide feedback and receive support from moderators.
- Frontend: Next.js
- Backend: Node.js, Express.js
- Database: MongoDB
- Hosting: Vercel
-
Clone the repository:
git clone https://github.com/ahmedz182/virtual-question-bank.git cd virtual-question-bank
-
Install dependencies:
npm install
-
Set up environment variables: Create a .env file and add your MongoDB URI, session secrets, and any other necessary environment variables.
-
Start the development server:
npm run dev
- Access the project at http://localhost:3000.
Usage 1 Admin: Log in to manage users, review questions, and generate reports. 2 Moderator: Add or approve questions and provide support to students. 3 Student: Register to access practice quizzes, take exams, and track progress.
Contributing Contributions are welcome! To contribute:
1 Fork the repository. 2 Create a new branch (git checkout -b feature/YourFeature). 3 Commit your changes (git commit -m 'Add new feature'). 4 Push to the branch (git push origin feature/YourFeature). 5 Open a pull request.
License This project is licensed under the MIT License - see the LICENSE file for details.