A modern, responsive, and feature-rich technical MCQ assessment platform built with vanilla JavaScript, HTML5, and CSS3.
- Multiple Topics: HTML, CSS, JavaScript, SQL, OOP, and C Programming
- Modern UI: Responsive design with animations and smooth transitions
- Exam Configuration: Customizable time limits, question counts, and difficulty levels
- Real-time Progress: Live progress tracking and timer
- Performance Analytics: Detailed results and performance statistics
- Local Storage: Persistent exam history and user preferences
- Responsive Design: Works on desktop, tablet, and mobile devices
TechQuiz-Pro/
├── index.html # Main HTML file
├── assets/
│ ├── css/
│ │ ├── main.css # Main stylesheet
│ │ ├── animations.css # CSS animations
│ │ └── components.css # Reusable components
│ └── js/
│ ├── app.js # Main application
│ └── modules/
│ ├── router.js # Navigation router
│ ├── topics.js # Topic management
│ ├── exam.js # Exam logic
│ ├── results.js # Results handling
│ ├── storage.js # Local storage
│ └── ui.js # UI interactions
└── README.md # Documentation
- Clone or Download the project files
- Open
index.htmlin your web browser - Start using the application immediately - no build process required!
- Browse available topics with interactive cards
- Click "Start Exam" on any topic to begin
- Select topic, question count, time limit, and difficulty
- Preview your configuration before starting
- Answer questions with immediate feedback
- Navigate between questions
- Track progress with real-time timer
- View detailed performance statistics
- Review incorrect answers
- Access exam history
The platform supports various configuration options:
- Topics: HTML, CSS, JavaScript, SQL, OOP, C Programming
- Question Count: 5-50 questions per exam
- Time Limit: 5-120 minutes
- Difficulty: Mixed, Easy, Medium, Hard
All data is stored locally in the browser's localStorage:
- Exam history and results
- User preferences
- Topic statistics
- Add topic data to
assets/js/modules/topics.js - Update topic card template in
assets/js/modules/topics.js - Add CSS styles for new topic colors
- Modify CSS variables in
assets/css/main.css - Update animations in
assets/css/animations.css - Customize components in
assets/css/components.css
# Simply open index.html in your browser
# No build tools or server required- Create new module in
assets/js/modules/ - Import and initialize in
assets/js/app.js - Update UI components as needed
- Vanilla JavaScript: ES6+ modules, no frameworks
- CSS3: Grid, Flexbox, animations, custom properties
- HTML5: Semantic markup, accessibility features
- Responsive: Mobile-first design approach
- Performance: Optimized for fast loading
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is open source and available under the MIT License.
Please report any issues or bugs through the project's issue tracker.
For questions or support, please open an issue on the project repository.