A comprehensive adaptive learning platform for MCCQE1 (Medical Council of Canada Qualifying Examination Part 1) preparation.
URL: http://localhost:3001 (or check your terminal for the actual port)
- 50+ Practice Questions across all MCCQE1 subjects
- Adaptive Learning with spaced repetition algorithm (SM-2 variant)
- Real-time Progress Tracking with detailed analytics
- Exam Simulation with timed practice sessions
- Subject Filtering to focus on specific areas
- Comprehensive Dashboard with performance metrics
- Login/Register pages
- Demo account:
demo@mccqe1.com/demo123 - Session management (ready for production database)
- Cardiology (8 questions): MI, arrhythmias, valvular disease, ECG interpretation
- Endocrinology (10 questions): Diabetes, thyroid disorders, adrenal issues, pituitary tumors
- Respiratory (6 questions): COPD, pneumonia, pneumothorax, asthma
- Gastroenterology (6 questions): Ulcers, cholangitis, IBD, liver disease
- Neurology (6 questions): Stroke, MS, Parkinson's, meningitis
- Psychiatry (5 questions): Depression, bipolar, OCD, schizophrenia
- Infectious Diseases (6 questions): Pneumonia, STIs, meningitis, travel medicine
- Dermatology (4 questions): Skin cancers, infections, autoimmune
- Ophthalmology (3 questions): Retinal issues, glaucoma
- Otolaryngology (3 questions): Hearing loss, abscesses, cancer
- Rheumatology (3 questions): RA, gout, SjΓΆgren's
- Hematology (3 questions): Leukemias, anemias
- Nephrology (3 questions): Glomerular disease, CKD
- General Surgery (4 questions): Appendicitis, hernia, gallstones, breast cancer
- Vascular Surgery (1 question): AAA
- Urology (1 question): Testicular torsion
- Infectious Diseases (1 question): Strep throat
- Respiratory (1 question): Croup
- Gastroenterology (1 question): Rotavirus
- Nephrology (1 question): Nephrotic syndrome
- Cardiology (1 question): Kawasaki disease
- Surgery (1 question): Bilious vomiting
- Obstetrics (3 questions): Placental abruption, preeclampsia
- Gynecology (3 questions): Endometrial cancer, endometriosis, PID
mccqe1-tutor/
βββ src/
β βββ app/
β β βββ layout.tsx # Root layout
β β βββ page.tsx # Home page
β β βββ login/ # Login page
β β βββ register/ # Register page
β β βββ practice/ # Practice session page
β β βββ dashboard/ # Dashboard page
β β βββ api/
β β βββ auth/ # NextAuth API routes
β β βββ register/ # Registration API
β βββ components/
β β βββ QuestionCard.tsx # Question display component
β β βββ ProgressTracker.tsx # Progress tracking component
β β βββ SessionProvider.tsx # Auth session provider
β βββ lib/
β β βββ auth.ts # Authentication logic
β β βββ prisma.ts # Prisma client
β β βββ questionBank.ts # 50+ questions + algorithms
β βββ types/
β βββ index.ts # Type definitions
βββ prisma/
β βββ schema.prisma # Database schema
βββ public/ # Static assets
βββ package.json
- Frontend: Next.js 16 (App Router) with TypeScript
- Styling: Tailwind CSS
- Database: PostgreSQL with Prisma ORM
- Authentication: NextAuth.js (with Credentials provider)
- Hosting: Vercel (recommended)
- Node.js 18+
- PostgreSQL database (local or cloud)
- Clone and install dependencies:
cd mccqe1-tutor
npm install- Set up database:
# Option 1: Local PostgreSQL
createdb mccqe1_tutor
# Option 2: Prisma Postgres (free)
npx prisma dev- Configure environment:
# Update .env with your database URL
DATABASE_URL=postgresql://localhost:5432/mccqe1_tutor- Run migrations:
npx prisma migrate dev- Seed the question bank:
npx prisma db seed- Start development server:
npm run devVisit http://localhost:3001 (or the port shown in terminal).
- Navigate to
/practice - Filter questions by subject (optional)
- Answer questions one by one
- Review explanations after each answer
- Track your progress in real-time
- View overall accuracy and statistics
- See performance by subject category
- Identify weak areas for focused study
- Track study streak and progress
- Email:
demo@mccqe1.com - Password:
demo123
- User: User accounts and profile data
- Account: OAuth/credentials account data
- Session: User sessions
- Question: MCCQE1 questions with metadata
- StudyPlan: Adaptive study plans
- Progress: Daily progress tracking
- UserSession: Practice session history
- ExamResult: Mock exam results
The app uses a modified SM-2 algorithm to schedule question reviews:
- Quality score (0-5) determines next review interval
- Ease factor adjusts based on performance
- Repetitions counter tracks mastery level
- Tracks performance by category
- Identifies weak areas (< 60% accuracy)
- Suggests focus areas for study plans
- Free: 50 questions/month, basic progress tracking
- Pro ($19/month): Unlimited questions, detailed analytics, mock exams
- Premium ($39/month): All Pro features + personalized study plans, tutor support
- Exam Simulation Pack ($29): 5 full-length mock exams
- Question Bank Access ($49): Complete question bank (1000+ questions)
- Medical students preparing for MCCQE1
- International medical graduates (IMGs)
- Residents needing re-certification
- Continuing medical education (CME)
- Connect to real PostgreSQL database
- Implement full NextAuth.js with OAuth providers
- Add Stripe payment integration
- Expand question bank to 1000+ questions
- Implement spaced repetition scheduling
- Add exam simulation mode with timer
- Admin panel for question management
- AI-powered explanations
- Mobile app (React Native)
- Community features (forums, study groups)
- Integration with medical textbooks/resources
- Subscription tiers
- Exam simulation packs
- Tutor matching service
- Corporate partnerships (medical schools)
npm install -g vercel
vercel- Netlify: Connect GitHub repo
- AWS: Use Amplify or ECS
- DigitalOcean: App Platform
MIT License - feel free to use and modify for your needs.
Contributions are welcome! Please open an issue or submit a PR.
For questions or feedback, please open an issue on GitHub.
Note: This is a demo application. All questions are for educational purposes only and should be verified against official MCCQE1 materials.