Open source comprehensive e-learning platform with a focus on educational content delivery, learner tracking, and assessment management
See the code
Website · Admin Portal · Learner Portal · Contributing
| Course Explorer | AI Features |
|---|---|
![]() | ![]() |
| Learner Management | Package Management |
|---|---|
![]() | ![]() |
| Dashboard | AI Chat Assistant |
|---|---|
![]() | ![]() |
| Course Viewer |
|---|
![]() |
Two self-contained HTML pages (no build step, no server — just open them in a browser) that walk through the product end to end:
| Page | What's inside |
|---|---|
| Admin Portal Demo | Guided, click-through tour of the admin portal — screens, flows, and annotated walkthroughs of day-to-day admin tasks |
| Feature Catalog | Searchable catalog of every platform feature, grouped by module, with descriptions and where to find each one |
# Open locally after cloning
open docs/features/admin-portal-demo.html # macOS
xdg-open docs/features/vacademy-features.html # Linux
GitHub renders
.htmlfiles as source, not as pages. Clone the repo and open them locally, or view the same catalog in Markdown: vacademy-features.md. Both HTML pages are generated from JSON by the scripts in docs/features/build/.
| Document | Purpose | Audience |
|---|---|---|
| Admin Portal Demo | Interactive click-through tour of the admin portal | Everyone / Evaluators |
| Feature Catalog | Full feature catalog (Markdown version) | Everyone / Evaluators |
| Local Development Guide | Complete setup for local development | Developers |
| GitHub Secrets Configuration | Production secrets management | DevOps/Administrators |
| Security Migration Summary | Security improvements overview | Technical Teams |
| Stage Properties Migration | Environment variable migration details | DevOps/Developers |
Vacademy is an AI-enabled, open-source Learning Management System (LMS) built with a microservices architecture. It provides comprehensive tools for educational institutions, instructors, and learners, including course management, assessment creation, study libraries, and learner tracking.
The platform features a robust backend powered by Spring Boot microservices and modern frontend applications built with React, ensuring scalability, flexibility, and maintainability while delivering a powerful educational experience.
The Vacademy platform uses a microservices architecture with 6 specialized services, each running on dedicated ports and databases for optimal scalability and maintainability.
| Service | Port | Database | Primary Functions |
|---|---|---|---|
| Auth Service | 8071 | auth_service | Authentication, authorization, OAuth integration |
| Admin Core Service | 8072 | admin_core_service | Course management, admin operations |
| Community Service | 8073 | community_service | Community features, user interactions |
| Assessment Service | 8074 | assessment_service | Testing, evaluation, reports |
| Media Service | 8075 | media_service | File storage, media processing |
| Notification Service | 8076 | notification_service | Notifications, email, WhatsApp |
Before installing Vacademy, ensure you have:
Note: The GitHub token is required for accessing shared dependencies in GitHub packages. Create a token here with
read:packagespermission.
🚀 One-Command Setup:
# Clone and setup (2 minutes total)
git clone https://github.com/Vacademy-io/vacademy_platform.git
cd vacademy_platform
chmod +x scripts/local-dev-setup.sh
./scripts/local-dev-setup.sh
What the script does automatically:
Manual Docker Compose Setup:
# 1. Clone the repository
git clone https://github.com/Vacademy-io/vacademy_platform.git
cd vacademy_platform
# 2. Start all services
docker-compose up -d
# 3. Check service status
docker-compose ps
# 4. View logs
docker-compose logs -f
Access Points:
/actuator/health endpoint on each serviceKubernetes with Helm:
# Deploy to Kubernetes cluster
helm install vacademy ./vacademy_devops/vacademy-services
# Update deployment
helm upgrade vacademy ./vacademy_devops/vacademy-services
GitHub Actions CI/CD:
Environment Variables: All sensitive configuration is managed through environment variables:
Key Configuration Areas:
For detailed setup and configuration, see:
vacademy_platform/
├── frontend-admin-dashboard/ # Admin dashboard (React + Vite + TanStack)
├── frontend-learner-dashboard-app/ # Learner dashboard (React + Vite + Capacitor)
├── admin_core_service/ # Course management, admin operations
├── ai_service/ # AI-powered features (Python)
├── assessment_service/ # Testing, evaluation, reports
├── auth_service/ # Authentication, OAuth2
├── common_service/ # Shared utilities and models
├── community_service/ # Community features
├── media_service/ # File storage, media processing
├── notification_service/ # Email, WhatsApp, push notifications
├── engage-client/ # Engagement client
├── docs/ # Documentation
│ ├── deployment/ # Setup & deployment guides
│ ├── guides/ # Feature & integration guides
│ ├── sentry/ # Observability & logging docs
│ └── jumpstart/ # Jumpstart program docs
├── scripts/ # Dev & deployment scripts
│ ├── db/ # Database setup SQL
│ └── k8s/ # Kubernetes scripts
├── vacademy_devops/ # Helm charts & DevOps config
├── docker-compose.yml # Local development orchestration
├── pom.xml # Maven parent POM
└── Dockerfile
| Service | Direct URL | Gateway URL | API Documentation |
|---|---|---|---|
| Gateway | - | http://localhost | - |
| Auth Service | http://localhost:8071 | http://localhost/auth-service/ | Swagger |
| Admin Core | http://localhost:8072 | http://localhost/admin-core-service/ | Swagger |
| Community | http://localhost:8073 | http://localhost/community-service/ | Swagger |
| Assessment | http://localhost:8074 | http://localhost/assessment-service/ | Swagger |
| Media | http://localhost:8075 | http://localhost/media-service/ | Swagger |
| Notification | http://localhost:8076 | http://localhost/notification-service/ | Swagger |
# Check individual service health
curl http://localhost:8071/auth-service/actuator/health
curl http://localhost:8072/admin-core-service/actuator/health
# ... (repeat for each service)
# Check all services via gateway
curl http://localhost/health
localhost:5432 with separate databases per servicelocalhost:6379docker-compose logs -f [service-name]docker-compose up -d --scale [service-name]=3The platform includes two React applications with TypeScript:
cd frontend-learner-dashboard-app
npm install && npm run dev
cd frontend-admin-dashboard
npm install && npm run dev
Note: Frontend development is optional for backend-focused development. The Docker Compose setup focuses on backend services.
The Vacademy platform features two distinct frontend applications:
A responsive, mobile-first application designed for learners to access educational content and participate in assessments.
Key Features:
Tech Stack:
A comprehensive administration interface for educational institutions and instructors.
Key Features:
Tech Stack:
/login: User login/register: New user registration/login/forgot-password: Password recovery/logout: User logout/dashboard: Main user dashboard/dashboard/notifications: User notifications/study-library: Main study library/study-library/courses: Course listing/study-library/courses/levels: Level selection/study-library/courses/levels/subjects: Subject selection/study-library/courses/levels/subjects/modules: Module selection/study-library/courses/levels/subjects/modules/chapters: Chapter selection/study-library/courses/levels/subjects/modules/chapters/slides: Slide viewer/assessment/examination: Available examinations/assessment/examination/$assessmentId: Assessment details/assessment/examination/$assessmentId/LearnerLiveTest: Take live assessment/assessment/examination/$assessmentId/assessmentPreview: Preview assessment/assessment/reports/student-report: Student assessment reports/user-profile: User profile view/user-profile/edit: Edit user profile/delete-user: Delete user account/institute-selection: Select learning institute/learner-invitation-response: Respond to institute invitations/login: Admin login/signup: New admin registration/login/forgot-password: Password recovery/dashboard: Main admin dashboard/study-library: Main study library management/study-library/courses: Course management/study-library/present: Presentation mode/study-library/reports: Study library reports/assessment/assessment-list: List of assessments/assessment/question-papers: Question paper management/evaluation/evaluation-tool: Evaluation tools/evaluation/evaluations: Evaluation management/ai-center/ai-tools: AI tool selection/ai-center/ai-tools/vsmart-audio: AI audio processing/ai-center/ai-tools/vsmart-chat: AI chatbot interface/ai-center/ai-tools/vsmart-extract: AI content extraction/ai-center/ai-tools/vsmart-feedback: AI assessment feedback/manage-institute/batches: Batch management/manage-institute/sessions: Session management/manage-institute/teams: Team management/manage-students/students-list: Student listing/manage-students/invite: Invite students/manage-students/enroll-requests: Manage enrollment requests./scripts/local-dev-setup.shWe welcome contributions! Here's how to get started:
/docs folderVacademy integrates AI deeply into the teaching and learning experience — not as an add-on, but as a core part of the platform.
| Feature | Description |
|---|---|
| Create Educational Content | Auto-generate videos, storybooks, quizzes, and timelines from your syllabus |
| Create End-to-End Assessments | Generate complete PPTs, diagrams, videos, quizzes, and assignments from topics |
| Lecture Assistant | Automatically create notes, quizzes, and flashcards from live lecture recordings |
| Lecture Planner | AI-powered lesson planning — plan your lecture before class starts |
| AI Learning Tools | Access a growing suite of AI tools for content creation and evaluation |
| Feature | Description |
|---|---|
| AI Chat Assistant | Context-aware tutor that understands the current slide/chapter and answers questions in real-time |
| AI Copilot | In-document AI assistant for drawing, annotations, and interactive learning |
| Smart Progress Tracking | AI-driven learning analytics with personalized insights |
Try it live: explore.vacademy.ai
| Feature | Vacademy | Moodle | Canvas LMS | Open edX | Google Classroom |
|---|---|---|---|---|---|
| AI Content Generation | Yes | No | No | No | No |
| AI Chat Tutor | Yes | No | No | No | No |
| AI Lecture Assistant | Yes | No | No | No | No |
| AI Assessment Creation | Yes | No | No | No | No |
| AI Lecture Planner | Yes | No | No | No | No |
| Modern Frontend (React) | Yes | No (PHP) | Partial (React) | No (Django) | No (Proprietary) |
| Microservices Architecture | Yes | No (Monolith) | No (Monolith) | Partial | No (Proprietary) |
| Self-Hosted | Yes | Yes | Yes | Yes | No |
| Mobile App | Yes (Capacitor) | Plugin | Yes | Partial | Yes |
| REST API | Yes | Yes | Yes | Yes | Limited |
| Real-time Assessments | Yes | Yes | Yes | Yes | Limited |
| Multi-tenant | Yes | No | Yes | Yes | Yes |
| Docker One-Command Setup | Yes | No | No | Partial | N/A |
| Open Source | Yes (AGPL-3.0) | Yes (GPL) | Yes (AGPL) | Yes (AGPL) | No |
| Tech Stack | Spring Boot + React | PHP | Ruby + React | Python (Django) | Proprietary |
| Active AI Development | Yes | No | No | No | Limited |
Vacademy is the only open-source LMS with native AI capabilities built into both the teaching and learning experience.
Ready to transform education with AI-powered learning? Start here: Local Development Guide → Get running in 2 minutes!
Built with ❤️ by the Vacademy community • Contribute • Report Issues • Join Discussions
TypeScript
58.7%
Java
26.3%
Python
11.8%
Open source comprehensive e-learning platform with a focus on educational content delivery, learner tracking, and assessment management
See the code
Website · Admin Portal · Learner Portal · Contributing
| Course Explorer | AI Features |
|---|---|
![]() | ![]() |
| Learner Management | Package Management |
|---|---|
![]() | ![]() |
| Dashboard | AI Chat Assistant |
|---|---|
![]() | ![]() |
| Course Viewer |
|---|
![]() |
Two self-contained HTML pages (no build step, no server — just open them in a browser) that walk through the product end to end:
| Page | What's inside |
|---|---|
| Admin Portal Demo | Guided, click-through tour of the admin portal — screens, flows, and annotated walkthroughs of day-to-day admin tasks |
| Feature Catalog | Searchable catalog of every platform feature, grouped by module, with descriptions and where to find each one |
# Open locally after cloning
open docs/features/admin-portal-demo.html # macOS
xdg-open docs/features/vacademy-features.html # Linux
GitHub renders
.htmlfiles as source, not as pages. Clone the repo and open them locally, or view the same catalog in Markdown: vacademy-features.md. Both HTML pages are generated from JSON by the scripts in docs/features/build/.
| Document | Purpose | Audience |
|---|---|---|
| Admin Portal Demo | Interactive click-through tour of the admin portal | Everyone / Evaluators |
| Feature Catalog | Full feature catalog (Markdown version) | Everyone / Evaluators |
| Local Development Guide | Complete setup for local development | Developers |
| GitHub Secrets Configuration | Production secrets management | DevOps/Administrators |
| Security Migration Summary | Security improvements overview | Technical Teams |
| Stage Properties Migration | Environment variable migration details | DevOps/Developers |
Vacademy is an AI-enabled, open-source Learning Management System (LMS) built with a microservices architecture. It provides comprehensive tools for educational institutions, instructors, and learners, including course management, assessment creation, study libraries, and learner tracking.
The platform features a robust backend powered by Spring Boot microservices and modern frontend applications built with React, ensuring scalability, flexibility, and maintainability while delivering a powerful educational experience.
The Vacademy platform uses a microservices architecture with 6 specialized services, each running on dedicated ports and databases for optimal scalability and maintainability.
| Service | Port | Database | Primary Functions |
|---|---|---|---|
| Auth Service | 8071 | auth_service | Authentication, authorization, OAuth integration |
| Admin Core Service | 8072 | admin_core_service | Course management, admin operations |
| Community Service | 8073 | community_service | Community features, user interactions |
| Assessment Service | 8074 | assessment_service | Testing, evaluation, reports |
| Media Service | 8075 | media_service | File storage, media processing |
| Notification Service | 8076 | notification_service | Notifications, email, WhatsApp |
Before installing Vacademy, ensure you have:
Note: The GitHub token is required for accessing shared dependencies in GitHub packages. Create a token here with
read:packagespermission.
🚀 One-Command Setup:
# Clone and setup (2 minutes total)
git clone https://github.com/Vacademy-io/vacademy_platform.git
cd vacademy_platform
chmod +x scripts/local-dev-setup.sh
./scripts/local-dev-setup.sh
What the script does automatically:
Manual Docker Compose Setup:
# 1. Clone the repository
git clone https://github.com/Vacademy-io/vacademy_platform.git
cd vacademy_platform
# 2. Start all services
docker-compose up -d
# 3. Check service status
docker-compose ps
# 4. View logs
docker-compose logs -f
Access Points:
/actuator/health endpoint on each serviceKubernetes with Helm:
# Deploy to Kubernetes cluster
helm install vacademy ./vacademy_devops/vacademy-services
# Update deployment
helm upgrade vacademy ./vacademy_devops/vacademy-services
GitHub Actions CI/CD:
Environment Variables: All sensitive configuration is managed through environment variables:
Key Configuration Areas:
For detailed setup and configuration, see:
vacademy_platform/
├── frontend-admin-dashboard/ # Admin dashboard (React + Vite + TanStack)
├── frontend-learner-dashboard-app/ # Learner dashboard (React + Vite + Capacitor)
├── admin_core_service/ # Course management, admin operations
├── ai_service/ # AI-powered features (Python)
├── assessment_service/ # Testing, evaluation, reports
├── auth_service/ # Authentication, OAuth2
├── common_service/ # Shared utilities and models
├── community_service/ # Community features
├── media_service/ # File storage, media processing
├── notification_service/ # Email, WhatsApp, push notifications
├── engage-client/ # Engagement client
├── docs/ # Documentation
│ ├── deployment/ # Setup & deployment guides
│ ├── guides/ # Feature & integration guides
│ ├── sentry/ # Observability & logging docs
│ └── jumpstart/ # Jumpstart program docs
├── scripts/ # Dev & deployment scripts
│ ├── db/ # Database setup SQL
│ └── k8s/ # Kubernetes scripts
├── vacademy_devops/ # Helm charts & DevOps config
├── docker-compose.yml # Local development orchestration
├── pom.xml # Maven parent POM
└── Dockerfile
| Service | Direct URL | Gateway URL | API Documentation |
|---|---|---|---|
| Gateway | - | http://localhost | - |
| Auth Service | http://localhost:8071 | http://localhost/auth-service/ | Swagger |
| Admin Core | http://localhost:8072 | http://localhost/admin-core-service/ | Swagger |
| Community | http://localhost:8073 | http://localhost/community-service/ | Swagger |
| Assessment | http://localhost:8074 | http://localhost/assessment-service/ | Swagger |
| Media | http://localhost:8075 | http://localhost/media-service/ | Swagger |
| Notification | http://localhost:8076 | http://localhost/notification-service/ | Swagger |
# Check individual service health
curl http://localhost:8071/auth-service/actuator/health
curl http://localhost:8072/admin-core-service/actuator/health
# ... (repeat for each service)
# Check all services via gateway
curl http://localhost/health
localhost:5432 with separate databases per servicelocalhost:6379docker-compose logs -f [service-name]docker-compose up -d --scale [service-name]=3The platform includes two React applications with TypeScript:
cd frontend-learner-dashboard-app
npm install && npm run dev
cd frontend-admin-dashboard
npm install && npm run dev
Note: Frontend development is optional for backend-focused development. The Docker Compose setup focuses on backend services.
The Vacademy platform features two distinct frontend applications:
A responsive, mobile-first application designed for learners to access educational content and participate in assessments.
Key Features:
Tech Stack:
A comprehensive administration interface for educational institutions and instructors.
Key Features:
Tech Stack:
/login: User login/register: New user registration/login/forgot-password: Password recovery/logout: User logout/dashboard: Main user dashboard/dashboard/notifications: User notifications/study-library: Main study library/study-library/courses: Course listing/study-library/courses/levels: Level selection/study-library/courses/levels/subjects: Subject selection/study-library/courses/levels/subjects/modules: Module selection/study-library/courses/levels/subjects/modules/chapters: Chapter selection/study-library/courses/levels/subjects/modules/chapters/slides: Slide viewer/assessment/examination: Available examinations/assessment/examination/$assessmentId: Assessment details/assessment/examination/$assessmentId/LearnerLiveTest: Take live assessment/assessment/examination/$assessmentId/assessmentPreview: Preview assessment/assessment/reports/student-report: Student assessment reports/user-profile: User profile view/user-profile/edit: Edit user profile/delete-user: Delete user account/institute-selection: Select learning institute/learner-invitation-response: Respond to institute invitations/login: Admin login/signup: New admin registration/login/forgot-password: Password recovery/dashboard: Main admin dashboard/study-library: Main study library management/study-library/courses: Course management/study-library/present: Presentation mode/study-library/reports: Study library reports/assessment/assessment-list: List of assessments/assessment/question-papers: Question paper management/evaluation/evaluation-tool: Evaluation tools/evaluation/evaluations: Evaluation management/ai-center/ai-tools: AI tool selection/ai-center/ai-tools/vsmart-audio: AI audio processing/ai-center/ai-tools/vsmart-chat: AI chatbot interface/ai-center/ai-tools/vsmart-extract: AI content extraction/ai-center/ai-tools/vsmart-feedback: AI assessment feedback/manage-institute/batches: Batch management/manage-institute/sessions: Session management/manage-institute/teams: Team management/manage-students/students-list: Student listing/manage-students/invite: Invite students/manage-students/enroll-requests: Manage enrollment requests./scripts/local-dev-setup.shWe welcome contributions! Here's how to get started:
/docs folderVacademy integrates AI deeply into the teaching and learning experience — not as an add-on, but as a core part of the platform.
| Feature | Description |
|---|---|
| Create Educational Content | Auto-generate videos, storybooks, quizzes, and timelines from your syllabus |
| Create End-to-End Assessments | Generate complete PPTs, diagrams, videos, quizzes, and assignments from topics |
| Lecture Assistant | Automatically create notes, quizzes, and flashcards from live lecture recordings |
| Lecture Planner | AI-powered lesson planning — plan your lecture before class starts |
| AI Learning Tools | Access a growing suite of AI tools for content creation and evaluation |
| Feature | Description |
|---|---|
| AI Chat Assistant | Context-aware tutor that understands the current slide/chapter and answers questions in real-time |
| AI Copilot | In-document AI assistant for drawing, annotations, and interactive learning |
| Smart Progress Tracking | AI-driven learning analytics with personalized insights |
Try it live: explore.vacademy.ai
| Feature | Vacademy | Moodle | Canvas LMS | Open edX | Google Classroom |
|---|---|---|---|---|---|
| AI Content Generation | Yes | No | No | No | No |
| AI Chat Tutor | Yes | No | No | No | No |
| AI Lecture Assistant | Yes | No | No | No | No |
| AI Assessment Creation | Yes | No | No | No | No |
| AI Lecture Planner | Yes | No | No | No | No |
| Modern Frontend (React) | Yes | No (PHP) | Partial (React) | No (Django) | No (Proprietary) |
| Microservices Architecture | Yes | No (Monolith) | No (Monolith) | Partial | No (Proprietary) |
| Self-Hosted | Yes | Yes | Yes | Yes | No |
| Mobile App | Yes (Capacitor) | Plugin | Yes | Partial | Yes |
| REST API | Yes | Yes | Yes | Yes | Limited |
| Real-time Assessments | Yes | Yes | Yes | Yes | Limited |
| Multi-tenant | Yes | No | Yes | Yes | Yes |
| Docker One-Command Setup | Yes | No | No | Partial | N/A |
| Open Source | Yes (AGPL-3.0) | Yes (GPL) | Yes (AGPL) | Yes (AGPL) | No |
| Tech Stack | Spring Boot + React | PHP | Ruby + React | Python (Django) | Proprietary |
| Active AI Development | Yes | No | No | No | Limited |
Vacademy is the only open-source LMS with native AI capabilities built into both the teaching and learning experience.
Ready to transform education with AI-powered learning? Start here: Local Development Guide → Get running in 2 minutes!
Built with ❤️ by the Vacademy community • Contribute • Report Issues • Join Discussions
TypeScript
58.7%
Java
26.3%
Python
11.8%