QCM Builder is an exciting web application 🌐 crafted with Node.js and Angular, tailored for generating multiple-choice questions (QCM). Ideal for various student classes and courses 📚, it simplifies the process of selecting chapters, generating QCMs 🔍, providing detailed explanations for correct and incorrect answers, and even tracking progress 📊.
The project is neatly organized into two primary folders:
This folder houses the backend logic implemented in Node.js. It takes charge of generating QCMs and furnishing the necessary APIs for the Angular frontend.
The Angular folder encompasses the frontend code, offering an intuitive user interface. Users can seamlessly navigate through classes, courses, and chapters, answer questions, access explanations, and monitor progress.
To run the project locally, follow these straightforward steps:
- Navigate to the
Node
folder. - Install dependencies using
npm install
. - Run the server using
npm run dev
. - The Node.js server will be up and running on a specified port (default is http://localhost:3000).
- Move to the
Angular
folder. - Install dependencies using
npm install
. - Initiate the Angular development server with
ng serve
. - Open your browser and head to http://localhost:4200.
- 🌐 Access the Angular application in your browser.
- 🎓 Choose the relevant student class, course, and chapters.
- 🚀 Generate the QCM effortlessly.
- 🤔 Answer the questions, and detailed explanations await for both correct and incorrect answers.
- 📊 Keep an eye on your progress through the intuitive progress bar.
- 🏆 Get a glimpse of your final score based on correct answers.
Explore the visual journey with these snapshots:
Snapshot of the Class Selection Screen |
Snapshot of the Course Selection Screen |
Snapshot of QCM Generation in Progress |
Snapshot of Answering Questions with Explanations |
Snapshot Final Score |
- Node.js
- Angular
- MongoDB