The modern open-source Learning Management System
EaseLMS is a complete solution for creating, managing, and delivering online courses with features like video lessons, interactive quizzes, progress tracking, certificates, and payment integration. Built with modern technologies, it provides a beautiful learning experience for students and powerful tools for instructors.Get started
Create your account and enroll in your first course in minutes
Installation
Self-host EaseLMS with complete control over your data
Source code
View the open-source code on GitHub
Hosted service
Zero setup with our fully managed hosting solution
Why choose EaseLMS?
EaseLMS combines modern development practices with powerful learning features to deliver an exceptional experience for both learners and instructors.Modern stack
Built with Next.js 16, React 19, TypeScript, and Supabase for cutting-edge performance
Beautiful UI
Modern, responsive design with dark mode support and mobile-first approach
Secure
Built-in authentication, role-based access control, and data encryption
Monetization ready
Integrated payment processing with Stripe and Flutterwave
Feature rich
Courses, quizzes, certificates, analytics, and comprehensive email notifications
Self-hostable
Complete control over your data and infrastructure
Core features
Course management
Create unlimited courses with a rich content editor, video lessons with progress tracking, and document resources. Set up course prerequisites, organize content with categories and tags, and track enrollment analytics.EaseLMS supports multiple enrollment modes: free courses, one-time paid courses, and recurring subscriptions.
- Free courses - Open access for all learners
- Paid courses - One-time purchase with Stripe or Flutterwave
- Recurring - Subscription-based access
- Closed - Private courses for specific learners
Learning experience
Learners enjoy a mobile-responsive course player with video playback, progress saving, and interactive quizzes. The platform tracks progress in real-time, awards achievement badges and certificates, and provides discussion features. Supported lesson types:- Video lessons - With progress tracking and Media Chrome player
- Text content - Rich text with images and formatting
- Mixed lessons - Combine video and text in a single lesson
- Interactive quizzes - Multiple question types with instant feedback
Admin and instructor tools
Manage users across three roles (Admin, Instructor, Learner), view comprehensive analytics, and process payments. Customize your platform’s branding including logos, colors, and SEO metadata.User management
Role-based access control with Admin, Instructor, and Learner roles
Analytics dashboard
Track enrollments, course completion, revenue, and learner progress
Custom branding
Platform name, logos (light/dark), favicon, and SEO metadata
Email notifications
Automated emails via SendGrid for enrollments, completions, and payments
Payment integration
Accept payments globally with Stripe or target African markets with Flutterwave. The platform supports multi-currency, handles one-time and recurring payments, and maintains complete purchase history. Payment features:- Global payments via Stripe
- African markets via Flutterwave
- Multi-currency support with automatic conversion
- Webhook handling for payment confirmations
- Automated email receipts
Certificates
Automatically generate certificates when learners complete courses. Customize templates, add digital signatures, and allow PDF export. Certificates can be for completion, achievement, or participation.Technology stack
- Framework: Next.js 16 with App Router
- Language: TypeScript 5.0
- Database: Supabase (PostgreSQL)
- Authentication: Supabase Auth
- Storage: AWS S3 + CloudFront
- Payments: Stripe & Flutterwave
- Email: SendGrid
- Styling: Tailwind CSS
- Components: Radix UI + shadcn/ui
Email notification system
EaseLMS includes comprehensive email notifications powered by SendGrid, using your platform’s branding configured in Settings. User notifications:- Welcome email when signing up
- Enrollment confirmation
- Course completion notification
- Certificate ready notification
- Payment confirmation and failure alerts
- New enrollment alerts
- Payment received notifications
- Course completion reports
All emails automatically use your custom branding including platform name, logo, contact email, and support both light and dark mode.
Deployment options
- Self-hosted
- Hosted service
Deploy EaseLMS on your own infrastructure with complete control. Requires Node.js 18+, Supabase account, and optional AWS S3 for file storage.Benefits:
- Full control over data and infrastructure
- Customize code to your needs
- No recurring hosting fees (pay for infrastructure only)
- AGPL-3.0 license for internal use