Personalized, Graph-Aware Learning Path Generator with Prerequisite Resolution & AI Guidance
π Live Web App: https://learn-path-ai.netlify.app/ Β |Β π GitHub Repository: https://github.com/bikram73/LearnPath_AI
π Description |
π Section |
|---|---|
View the project features and capabilities. π |
|
View the technologies, frameworks, and programming languages used. π |
|
Explore the project's folder and file organization. π |
|
Follow the installation steps and local development setup. π |
|
Understand the complete AI document processing pipeline. π |
|
Learn about the AI prompting strategy and anti-hallucination techniques. π |
|
Understand how confidence scores are calculated and interpreted. π |
|
View all deliverables required for the AI challenge. π |
|
View the available REST API endpoints and usage examples. π |
|
Explore the complete system architecture, AI workflow, processing pipeline, data flow, deployment design, and technical decisions. π |
|
Review implementation details, AI pipeline, performance metrics, benchmarking, validation strategy, privacy, testing, and technical specifications. π |
|
Review processing speed, latency, and performance benchmarks. π |
|
Understand the current limitations and known failure cases of the AI extractor. π |
- π― Intelligent Student Profile Wizard: 4-step wizard capturing academic background, current skills, desired career goal, experience level, weekly study hours, and learning style.
- π³ Prerequisite-Aware Topological Ordering: Builds a Directed Acyclic Graph (DAG) across courses ensuring foundational modules (e.g. Linear Algebra, Python, SQL) precede advanced subjects (e.g. Deep Learning, Distributed Systems).
- π§© Skill-Gap Analysis & Match Score: Evaluates user skills against target career profiles to identify acquired vs missing competencies with precision.
- π¬ Interactive AI Learning Advisor: Real-time context-aware chat assistant to discuss study pacing, course alternatives, capstone ideas, and career preparation.
- π Comprehensive Course Catalog: Searchable and filterable course library with difficulty filters, duration tags, prerequisites, and key topic badges.
- π₯ Pre-configured Sample Personas: Instant one-click profiles representing common learner archetypes (e.g. Alex Rivera, Priya Patel, Marcus Chen).
- π± Adaptive Responsive UI & Mobile Navigation: Tailored desktop header + pinned mobile bottom navigation bar with fluid transitions.
- π Privacy-First Zero-Auth Architecture: Stateless computation with no tracking cookies or user login requirements.
- TypeScript 5.8: Strongly typed frontend and backend code
- Node.js 20+: Backend runtime environment
- HTML5 & CSS3: Semantic markup and modern styling
- React 19: Modern component architecture with functional hooks
- Tailwind CSS v4: Utility-first styling engine with
@tailwindcss/vite - Lucide React: Modern iconography system
- Motion (Framer Motion): Smooth interactive UI transitions
- Express.js 4.21: High-performance RESTful API endpoints
- Vite 6.2: Next-generation frontend build tool with middleware mounting in dev
- tsx: Ultra-fast TypeScript execution engine
- Google Gen AI SDK (
@google/genai): Cascade architecture (gemini-2.5-flash/gemini-1.5-flash) for contextual rationale synthesis and conversational tutoring - Deterministic Graph Engine: 3-color DFS topological sorting and prerequisite dependency resolution algorithm
learnpath-ai/
βββ π .env.example # Environment variables template
βββ π .gitignore # Git ignore configuration
βββ π index.html # HTML entry point with Inter font & SEO meta
βββ π metadata.json # Project metadata & capabilities manifest
βββ π package.json # Project dependencies and npm scripts
βββ π server.ts # Express backend + Vite dev middleware server
βββ π tsconfig.json # TypeScript compiler configuration
βββ π vite.config.ts # Vite configuration with Tailwind CSS plugin
βββ π ARCHITECTURE.md # Detailed architecture & workflow documentation
βββ π TECHNICAL_REPORT.md # Technical specifications & benchmark report
βββ π TEST_PLAN.md # End-to-end testing & hardening plan
βββ π TEST_REPORT.md # Measured test suite results matrix (63/63 PASS)
βββ π README.md # Main project documentation
β
βββ π tests/ # Automated Verification & Hardening Suite
β βββ π e2e-test-suite.ts # Comprehensive E2E test runner (npm test)
β
βββ π src/ # Application source code
βββ π App.tsx # Root React application layout & state routing
βββ π main.tsx # Client entry point
βββ π index.css # Global Tailwind CSS imports & theme rules
βββ π types.ts # Central TypeScript interfaces & types
β
βββ π components/ # Modular UI Components
β βββ π Navbar.tsx # Desktop top navigation header & brand identity
β βββ π MobileBottomNav.tsx # Pinned mobile bottom navigation bar
β βββ π LandingPage.tsx # Hero section, feature showcases, testimonials & FAQ
β βββ π StudentProfileWizard.tsx # Multi-step interactive student questionnaire
β βββ π RecommendationDashboard.tsx # Visual roadmap, milestone cards & AI chat
β βββ π CourseCatalog.tsx # Filterable catalog with search & prerequisite badges
β βββ π SampleProfiles.tsx # Ready-to-use learner profile personas
β βββ π UserProfileModal.tsx # LocalStorage student profile management modal
β βββ π AboutPage.tsx # System architecture breakdown & methodology
β βββ π Footer.tsx # Brand footer & navigation links
β
βββ π data/ # Local Datasets (Zero External DB)
β βββ π courses.json # Course catalog & prerequisite definitions
β βββ π career_paths.json # Target career competency matrices
β βββ π student_profiles.json # Pre-configured learner persona datasets
β
βββ π lib/ # Algorithms & Shared Libraries
βββ π recommendationEngine.ts # DAG resolver, cycle detector & AI rationale layer
βββ π storage.ts # Browser LocalStorage synchronization helpers
- Node.js: v18.0.0 or higher
- npm or bun / yarn / pnpm
git clone https://github.com/bikram73/LearnPath_AI.git
cd LearnPath_AI
npm installCreate a .env file in the root directory:
cp .env.example .envAdd your optional AI API key if utilizing generative rationale generation:
GEMINI_API_KEY=your_api_key_here
PORT=3000npm run devOpen your browser at http://localhost:3000 to explore LearnPath AI.
npm run build
npm startββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β User Interaction β
β (Profile Wizard / Persona Selector / Search) β
ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββ
β POST /api/recommend
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Express REST API (`server.ts`) β
ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββ
β
βββββββββββββββ΄ββββββββββββββ
βΌ βΌ
βββββββββββββββββββββββββββ βββββββββββββββββββββββββββ
β Course Knowledge Graph β β Skill Gap Resolution β
β (courses.json / DAG) β β (Career Target Matrix)β
ββββββββββββββ¬βββββββββββββ ββββββββββββββ¬βββββββββββββ
β β
βββββββββββββββ¬ββββββββββββββ
β
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Topological Sort Engine (Prerequisite Resolver) β
β - Checks user acquired skills vs. course requirements β
β - Enqueues required prerequisite courses strictly β
β - Ensures DAG validity & cycle-free ordering β
ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββ
β
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AI Rationale Synthesis Layer (LLM Engine) β
β - Injects ordered courses + student profile context β
β - Generates custom benefits, milestones & timeline β
β - Fallback deterministic heuristic synthesis on error β
ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββ
β
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Recommendation Dashboard & Interactive Chat β
β - Visual Timeline Roadmap β
β - Career Readiness Score & Match Breakdown β
β - Interactive AI Advisor Drawer β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
To eliminate hallucination and guarantee zero phantom course recommendations, LearnPath AI utilizes Strict Grounding & Constrained JSON Output:
- Deterministic Catalog Injection: The AI model is strictly provided only the candidate courses resolved by the topological sorting engine. It is forbidden from inventing unlisted course IDs.
- Schema Enforcement: Requests use
responseMimeType: "application/json"with exact key bindings (aiSummary,careerOutcome,readinessScore,courseRationales). - Low Temperature Sampling: A temperature of
0.2is configured to favor logical consistency and analytical precision over creative divergence. - Fallback Redundancy: If network latency or API rate limits occur, the system immediately switches to a built-in deterministic graph synthesizer without failing the user experience.
The Career Readiness Score is calculated strictly via Deterministic Skill Coverage & Prerequisite Analysis:
Where:
-
Baseline Skill Coverage:
$$\text{Baseline Coverage} = \left(\frac{|\text{Acquired Target Skills}|}{\max(1, |\text{Total Target Skills}|)}\right) \times 100$$ -
Roadmap Curriculum Boost:
$$\text{Roadmap Boost} = \min\left(45, \left(\frac{|\text{Ordered Courses}|}{\max(1, |\text{Candidate Courses}|)}\right) \times 40\right)$$ -
Current Skill Coverage: The baseline percentage of prerequisites and target competencies the student currently possesses.
-
Projected Skill Coverage After Roadmap: 100% (guaranteed prerequisite and skill gap closure upon completing all ordered sequence courses).
-
Composite Readiness Metric: Calibrated purely deterministically from acquired prerequisite foundation plus roadmap curriculum coverage, completely eliminating arbitrary or non-deterministic AI score fluctuation.
| Deliverable | Status | Description |
|---|---|---|
| Interactive Profiling Wizard | β Complete | 4-step wizard with real-time feedback & validation |
| Prerequisite Resolution Engine | β Complete | Graph topological sort respecting all course dependencies |
| Course Catalog Dataset | β Complete | Multi-disciplinary modules covering AI, Web, Cloud & Data |
| Visual Roadmap Dashboard | β Complete | Timeline milestones, skill badges, and progress tracking |
| AI Advisor Chat Assistant | β Complete | Real-time tutoring & roadmap adjustments |
| Responsive Mobile Experience | β Complete | Pinned bottom navigation & fluid mobile-first layouts |
Returns all available courses in the catalog.
Returns pre-populated sample learner personas.
Generates a prerequisite-resolved learning path.
Request Body:
{
"name": "Alex Rivera",
"background": "Computer Science Student",
"skills": ["Python", "Basic Git"],
"goal": "AI Engineer",
"experienceLevel": "Beginner",
"weeklyHours": 12,
"learningStyle": "Hands-on Projects"
}Converses with the AI Learning Advisor.
Request Body:
{
"message": "Which course should I focus on first?",
"context": { "goal": "AI Engineer" }
}Benchmark Environment: Node.js 20+ / Vite 6.2 / TS 5.8
Test Suite Runs: 50 Iterations
| Pipeline Step | Median Latency | P95 Latency | Notes |
|---|---|---|---|
| Deterministic DAG Sort | < 1.0 ms |
< 2.5 ms |
3-color DFS topological graph engine |
| Skill Gap Resolution | < 0.2 ms |
< 0.5 ms |
In-memory tokenized set intersection |
| AI Rationale Generation | ~600 ms |
~1200 ms |
Google Gen AI SDK (@google/genai) |
| Deterministic Fallback | < 0.5 ms |
< 1.0 ms |
Instantaneous rule-based synthesizer |
| Client Bundle Size | < 180 KB |
< 180 KB |
Gzipped SPA bundle with Tailwind CSS v4 |
- Fixed Catalog Scope: Recommendations are bound to courses defined within the local catalog dataset (
courses.json). - Concurrent Multi-Goal Roadmaps: Currently optimizes for one primary target career path at a time.
- Offline Mode: AI conversational chat requires active internet connectivity for generative insights (graph roadmap generation functions 100% offline).