🎯 AptiFix - Project Summary
A comprehensive AI-powered MCQ practice platform for aptitude test preparation
AptiFix is a free, full-featured MCQ practice platform designed to help students prepare for Round 1 aptitude tests in tech company placements. Built with React and powered by Google Gemini AI, it offers dynamic question generation, personalized learning, and comprehensive analytics.
🎮 Practice Modes (6 Types)
Mode
Description
Location
Practice
Customizable quizzes with category, count, timer
/practice
Quick Quiz
5-question instant quizzes (Speed/Normal/Challenge/Survival)
/quick-quiz
Mock Test
Full-length timed tests (15-50 questions, 30-120 min)
/mock-test
Daily Challenge
Daily quizzes with bonus points & streaks
/daily-challenge
Topic Practice
Focused practice on specific topics
/topic-practice
Company Practice
Company-specific patterns (TCS, Infosys, etc.)
/company-practice
Feature
Description
Dynamic Question Generation
Fresh MCQs generated using Google Gemini AI
AI Tutor
Chat-based personalized learning assistant
Smart Recommendations
Topic suggestions based on weak areas
5-Model Fallback
Automatic switching between AI models for reliability
AI Model Chain:
gemini-2.0-flash (Primary)
gemini-2.0-flash-lite
gemma-3-4b-it
gemma-3-1b-it
gemini-2.5-flash-lite-preview-06-17
Feature
Charts/Metrics
Dashboard
Performance trend line chart, stats cards, recent sessions
Analytics Page
Area chart, Pie chart, Bar chart, Topic performance
Insights
Weak topics, strong topics, improvement suggestions
History
Complete session logs with filtering
Feature
Description
Leaderboard
Global rankings with "All Time" and "This Week" views
Badges
12+ achievement badges (First Quiz, Streak Master, etc.)
Points System
Earn points for correct answers, challenges, streaks
Streaks
Daily practice streak tracking
Tool
Description
Flashcards
Topic-wise cards with flip animation, mastery tracking
Study Materials
Formulas, concepts, tips for each topic
Bookmarks
Save important questions for revision
Review Mistakes
Practice previously wrong questions
Previous Papers
10+ previous year placement papers
Feature
Description
Dark Mode
Full dark theme across all 21 pages
Responsive
Desktop, tablet, mobile optimized
Settings
Timer, notifications, sound, dark mode toggles
Google Sign-In
One-click authentication
React 18.3.1 - UI Framework
Vite 5.4.2 - Build Tool & Dev Server
Tailwind CSS 3.4.17 - Utility-first CSS
React Router 7.1.1 - Client-side Routing
Recharts 2.15.0 - Charts & Visualizations
Lucide React 0.469.0 - Icon Library
Firebase 11.1.0 - Auth & Database SDK
Node.js - JavaScript Runtime
Express 4.21.2 - Web Framework
@google/generative-ai 0.24.1 - Gemini AI SDK
CORS - Cross-Origin Resource Sharing
dotenv - Environment Variables
Firebase Firestore - NoSQL Document Database
Firebase Auth - Google OAuth Provider
Vercel - Frontend Hosting (Free)
Render - Backend Hosting (Free)
📁 File Structure (21 Pages)
src/pages/
├── Home.jsx # Landing page
├── Login.jsx # Google authentication
├── Dashboard.jsx # Main dashboard with stats
├── Practice.jsx # Practice configuration
├── Quiz.jsx # Quiz interface
├── Results.jsx # Quiz results & review
├── QuickQuiz.jsx # Quick quiz modes
├── MockTest.jsx # Full mock test
├── DailyChallenge.jsx # Daily challenges
├── TopicPractice.jsx # Topic-based practice
├── CompanyPractice.jsx # Company-specific
├── PreviousPapers.jsx # Previous papers
├── Leaderboard.jsx # Rankings
├── Achievements.jsx # Badges
├── Flashcards.jsx # Study flashcards
├── StudyMaterials.jsx # Learning content
├── AiTutor.jsx # AI assistant
├── Analytics.jsx # Performance charts
├── Insights.jsx # Performance insights
├── History.jsx # Session history
├── Bookmarks.jsx # Saved questions
├── ReviewMistakes.jsx # Wrong answers
└── Settings.jsx # User preferences
📊 Database Schema (Firestore)
users/{userId}
{
displayName : "Jeeva N" ,
email : "user@gmail.com" ,
photoURL : "https://..." ,
points : 79 ,
streak : 5 ,
badges : [ "first_quiz" , "streak_3" ] ,
settings : { darkMode : true , timer : true }
}
sessions/{sessionId}
{
userId : "abc123" ,
category : "Quantitative Aptitude" ,
totalAttempted : 10 ,
correctAnswers : 7 ,
completedAt : Timestamp ,
questions : [ ...]
}
leaderboard/{id}
{
userId : "abc123" ,
userName : "Jeeva N" ,
photoURL : "https://..." ,
score : 79 ,
totalQuizzes : 5
}
Number Systems, Percentages, Profit & Loss
Time & Work, Time Speed Distance
Probability, Permutation & Combination
Puzzles, Coding-Decoding, Blood Relations
Syllogisms, Seating Arrangement, Direction Sense
Reading Comprehension, Grammar, Vocabulary
Para Jumbles, Sentence Correction
Data Structures, Algorithms, DBMS
Operating Systems, Computer Networks, OOP
Company
Pattern
Duration
Difficulty
TCS
NQT
90 min
Medium
Infosys
InfyTQ
60 min
Medium-Hard
Wipro
NLTH
60 min
Medium
Cognizant
GenC
75 min
Medium
Capgemini
Game-based
60 min
Medium
Accenture
Mixed
90 min
Medium
Amazon
OA
120 min
Hard
Google
OA
90 min
Very Hard
Metric
Abbreviation
Description
Questions Targeted
QT
Total questions in session
Total Attempted
TA
Questions answered
Accurate Questions
AQ
Correct answers
Accuracy %
-
(Correct / Attempted) × 100
Connect GitHub repository
Framework: Vite
Build command: npm run build
Output: dist
Add environment variables
Create Web Service
Connect GitHub repository
Build command: npm install
Start command: node server.js
Add GEMINI_API_KEY environment variable
Jeeva N
GitHub: @jeeva5655
Project: MCQ Practice App (AptiFix)
Phase
Features
Phase 1
Core quiz functionality, Firebase integration
Phase 2
AI question generation, Gemini integration
Phase 3
Gamification (leaderboard, badges, streaks)
Phase 4
Learning tools (flashcards, study materials)
Phase 5
Analytics, insights, AI tutor
Phase 6
Company practice, previous papers
Phase 7
Dark mode, UI polish
✅ 21 fully-functional pages
✅ Complete dark mode support
✅ AI-powered question generation
✅ 5-model fallback for reliability
✅ Real-time leaderboard
✅ Comprehensive analytics
✅ Mobile-responsive design
✅ 100% free deployment
Made with ❤️ for placement preparation