Skip to content
All projects

WebIn progress

LearnHub: Adaptive Learning Platform

An adaptive learning platform that personalizes education based on each learner’s progress and performance.

Role
Full-stack developer
Type
Web
Stack
  • Nestjs
  • React
  • Tanstack Query
  • Zustand
  • PostgreSQL
  • Docker
  • Redis
  • Jest
  • Playwright
  • React testing Library
learn hub desktop

Problem

Traditional digital learning platforms often provide the same learning path to every student. A learner who already understands a concept may be forced through material they don't need, while another learner struggling with a fundamental concept may continue to more advanced material without receiving enough support.

For learners in Uganda, this challenge is compounded by mobile-first usage, inconsistent connectivity, limited data availability, and significant differences in students' existing knowledge.

LearnHub was designed around a simple question:

What if a learning platform could continuously understand what a student knows, identify where they are struggling, and adapt what they teach next?

The goal was to build a learning experience that is personalized, mobile-first, and capable of continuing to work even when connectivity is limited.

Solution

LearnHub uses an adaptive learning engine to continuously evaluate learner performance. The system builds a continuously changing picture of the learner's knowledge.

Features

  • Authentication
  • Email/password
  • Google authentication
  • Profile
  • Learning goals
  • Skill level
  • Courses
  • Course catalogue
  • Categories
  • Search
  • Course details
  • Lessons
  • Video/text content
  • Interactive exercises
  • Assessments
  • Multiple choice
  • Coding questions
  • Short answers
  • Timed assessments
  • Practice exercises
  • Progress Course Progress 72% Completed lessons 18/25 Exercises 74 Assessments 8 Current streak 12 days
  • Personalized learning
  • Recommended lessons
  • Recommended exercises
  • Difficulty adjustment
  • Weak-topic detection
  • Revision recommendations
  • Learning path generation

Engineering decisions

Why React Native + Expo + TypeScript?

LearnHub is mobile-first and needs to support Android devices while maintaining a development workflow that allows rapid iteration. React Native provides cross-platform development while TypeScript provides stronger type safety across the application.

NestJS + TypeScript?

The backend contains several distinct domains—users, courses, assessments, progress, recommendations, and synchronization. NestJS provides a structured architecture that makes these domains easier to isolate and test.

Discussion0 comments

No comments yet. Start the discussion.