MyLMS Rewrite
A high-performance dashboard for Moodle LMS, rebuilt with a Rust API backend and Next.js frontend.
View on GitHubProblem
Standard Moodle implementations often suffer from slow navigation, cluttered interfaces, and deeply nested resources. Accessing a single file can require clicking through multiple menu layers, often with significant loading times. Additionally, offline access is typically unreliable or non-existent.
Solution
MyLMS Rewrite decouples the UI from the legacy backend. By reverse-engineering the LMS API, this project creates a read-only dashboard that caches heavily and loads instantly. It surfaces key content—files, assignments, and announcements—in a clean UI. An offline-first architecture ensures materials remain accessible without a network.
Features
API-First Architecture
- Direct API Access — Fetches Pages, Resources, Folders, URLs, and Lessons instantly.
- N+1 Optimization — Pre-fetches resource maps to eliminate redundant calls.
- High-Performance Backend — Rust-powered API server.
Offline-First Design
- Client-Side Caching — Uses IndexedDB for local content storage.
- Multi-Layer Caching — Browser, Server, and Redis caching hierarchy.
- Instant Navigation — Previously visited pages load instantly.
Clean Reading Experience
- Distraction-Free UI — Standardized typography.
- Dark Mode — Native dark mode support.
- LaTeX Support — Beautiful mathematical equation rendering.
Architecture