Skip to content

johnmoses/ultra-learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UltraLearning — AI-Powered Adaptive Learning Platform

UltraLearning Banner

Personalized learning, powered by LLMs, RAG, and autonomous agents. A full-stack AI application demonstrating production-grade architecture across web and mobile.

Python Flask Next.js React Native MCP License: MIT


Overview

UltraLearning is a three-tier adaptive learning platform that uses a full AI stack — Large Language Models, Retrieval-Augmented Generation, and autonomous agents — to deliver a personalized educational experience that adapts to each learner's pace, strengths, and goals.

Built to demonstrate how modern AI primitives (LLMs, RAG, agents, vector search, real-time streaming) can be composed into a coherent, production-architected application across backend, web, and mobile layers.


Screenshots

📱 Mobile App

View all mobile screenshots (16)

🌐 Web App

View all web screenshots (16)

Architecture

┌─────────────────────────────────────────────────────────┐
│                     CLIENT LAYER                        │
│         Next.js Web App  │  React Native Mobile         │
│         (SSE Streaming)  │  (iOS & Android)             │
└────────────────────┬────────────────────────────────────┘
                     │ REST / WebSocket
┌────────────────────▼────────────────────────────────────┐
│                    API LAYER                            │
│              Flask (Python 3.11)                        │
│     Auth (JWT)  │  Agent Orchestration  │  RAG Engine   │
└──────┬──────────┬──────────────┬────────────────────────┘
       │          │              │
┌──────▼───┐ ┌────▼─────┐ ┌─────▼──────────────────────┐
│PostgreSQL│ │  Milvus  │ │        LLM Layer            │
│(pgvector)│ │  Vector  │ │  LangChain · MCP · Llama    │
└──────────┘ └──────────┘ └─────────────────────────────┘
Layer Technology
Backend API Flask, Python 3.11
AI Orchestration LangChain, Anthropic MCP
RAG Pipeline Milvus vector DB, sentence-transformers (all-MiniLM-L6-v2)
LLM Inference Llama (local), OpenAI
Web Frontend Next.js 14, TypeScript, TailwindCSS, SSE streaming
Mobile React Native (iOS & Android)
Auth JWT
Database PostgreSQL
Deployment Docker Compose, Nginx

Key Features

🤖 AI-Powered Learning — Personalized content generation, summaries, and explanations via LLMs, adapting to each learner's history and performance.

🧠 RAG Document Intelligence — Upload your own PDFs and notes; they're chunked, embedded, and integrated into your personal learning context for grounded Q&A.

🤖 Autonomous AI Agents — Multi-agent system for research, real-time Q&A, and proactive learning assistance via MCP-connected context.

💬 Real-Time AI Tutoring — Token-streamed chat sessions via SSE with AI tutors and fellow learners.

🃏 Adaptive Flashcards — Spaced-repetition flashcards that adjust difficulty based on individual performance signals.

🏆 Gamification & Leaderboards — Points, badges, streaks, and competitive leaderboards to sustain engagement.

📊 Progress Dashboard — Topic-level mastery tracking with AI-generated insights on where to focus next.

🔐 Secure Auth — JWT-based authentication with role-aware access control across web and mobile.


Getting Started

Prerequisites

  • Python 3.9+, Node.js 18+, Docker & Docker Compose

Quickstart

# 1. Clone
git clone https://github.com/johnmoses/ultra-learning.git
cd ultra-learning

# 2. Configure environment
cp .env.dev .env
# Edit .env: LLM API keys, DB credentials

# 3. Start backend + database
docker-compose up -d --build

# 4. Run migrations
cd api && pip install -r requirements.txt && flask db upgrade && cd ..

# 5. Start web frontend
cd web && npm install && npm run dev   # → http://localhost:3000

# 6. Start mobile
cd mobile && npm install && npx react-native run-ios

AI Architecture Notes

Agent Orchestration — Built with LangChain and Anthropic's Model Context Protocol (MCP), agents query live application state (user progress, document store, flashcard performance) without hallucinating context.

RAG Pipeline — Documents are chunked with overlap-aware splitting, embedded via sentence-transformers, and stored in Milvus. Retrieval uses semantic search with a re-ranking step before LLM context injection.

Streaming — All AI responses stream to the client via Server-Sent Events (SSE), giving sub-second time-to-first-token.


Project Status

Complete proof of concept — fully functional locally. All core features implemented. Deployment to cloud (GCP Cloud Run + Vercel) planned.


About the Author

Built by John Moses — co-founding engineer at ShopStack360 and independent AI consultant through AXIIS Microsystems.

LinkedIn GitHub Email


License

MIT — see LICENSE for details.

About

Ultra Learning - an AI powered learning system

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors