Skip to content

[Feature]: Build AI-Powered Adaptive Learning Engine with Real-Time Performance Analytics Dashboard #384

Description

@S0412-2007

Feature/Project Proposal

would like to propose a 3-layer intelligent system for PrepPilot: an AI-Powered Adaptive Learning Engine that dynamically adjusts question difficulty based on user performance, a Real-Time Performance Analytics Dashboard to visualize progress, and a Smart Recommendations Engine to generate personalized study plans using spaced repetition.

Problem Statement

Currently, PrepPilot provides interview preparation resources in a static, one-size-fits-all manner. There is no intelligent mechanism to assess a user's current skill level dynamically, adapt question difficulty based on real-time performance, or visualize long-term progress. Users practice questions randomly without a personalized learning path, leading to inefficient preparation, poor retention, and a lack of motivation.

Proposed Solution

The project could implement a comprehensive 3-layer solution:

  1. Adaptive Learning Engine (Backend):

Implement an Elo-rating / Item-Response-Theory (IRT) based algorithm that dynamically adjusts question difficulty based on answer correctness, time taken per question, and topic-wise historical accuracy.
Maintain a user_skill_profile schema tracking per-topic proficiency scores (0-1000 scale).
Create API endpoints: GET /api/adaptive/next-question, POST /api/adaptive/submit-answer, GET /api/adaptive/skill-profile.
2. Real-Time Analytics Dashboard (Frontend):

Build a comprehensive analytics page featuring a Skill Radar Chart, Progress Timeline, GitHub-style Streak Heatmap, Speed vs Accuracy Scatter Plot, and Gamified Milestone Tracker.
Implement WebSocket/SSE for live updates during active practice sessions.
Add PDF/CSV export functionality for analytics reports.
3. Smart Recommendations Engine:

Suggest weak-topic focused practice sets.
Recommend revision sessions based on the SM-2 spaced repetition algorithm (forgetting curve).
Dynamically generate weekly study plans.

Alternatives Considered

Another possible solution is using static difficulty tags (Easy/Medium/Hard) or simple percentage-based progress tracking. However, static tags do not adapt to an individual's learning curve, and simple percentages lack the depth of Elo/IRT ratings needed to accurately map a user's true skill trajectory and predict optimal learning steps.

Benefits

This feature would drastically improve the user experience by providing a highly personalized and adaptive learning path. Users will study more efficiently by focusing precisely on their weak areas, retain information better through algorithmic spaced repetition, and stay motivated via visual progress tracking, streaks, and gamified milestones. This transforms PrepPilot from a simple question bank into an intelligent AI tutor.

Priority

High

Additional Context

Frontend (New Files)
frontend/
├── src/
│ ├── pages/
│ │ └── Analytics/
│ │ ├── AnalyticsDashboard.jsx
│ │ ├── SkillRadar.jsx
│ │ ├── ProgressTimeline.jsx
│ │ ├── StreakHeatmap.jsx
│ │ └── SpeedAccuracyChart.jsx
│ ├── components/
│ │ └── AdaptiveSession/
│ │ ├── AdaptivePractice.jsx
│ │ └── DifficultyIndicator.jsx
│ ├── hooks/
│ │ └── useSkillProfile.js
│ └── services/
│ └── adaptiveApi.js

Database Schema Addition

// New Collection: user_skill_profiles
{
userId: ObjectId,
topics: {
"DSA": { rating: 750, attempts: 120, correct: 89, avgTime: 45 },
"SystemDesign": { rating: 420, attempts: 50, correct: 28, avgTime: 120 },
},
streaks: { current: 7, longest: 21, lastPracticeDate: ISODate },
milestones: ["first_100", "week_streak", "dsa_500"],
revisionQueue: [{ topicId, nextReviewDate, easeFactor }]
}

✅ Acceptance Criteria

  • Elo/IRT engine correctly adjusts difficulty within ±50 rating points per attempt
  • Skill radar chart renders with ≥8 topic dimensions
  • Streak heatmap shows last 365 days of activity
  • WebSocket pushes real-time updates during active practice
  • Spaced repetition scheduler queues topics within optimal review window
  • Analytics page is fully responsive (mobile + desktop)
  • PDF/CSV export generates a well-formatted report
  • API

Checklist

  • I have searched existing issues and discussions before creating this request.
  • I am willing to work on this feature if it is approved.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions