https://github.com/ladmakhi81/learnup
LearnUp is a Go-based Learning Management System connecting teachers and students, enabling mentorship, video course sales, and course-specific forums for consistent communication.
https://github.com/ladmakhi81/learnup
docker golang gorm hls koanf logrus minio postgres redis resty smtp tus vod
Last synced: 3 months ago
JSON representation
LearnUp is a Go-based Learning Management System connecting teachers and students, enabling mentorship, video course sales, and course-specific forums for consistent communication.
- Host: GitHub
- URL: https://github.com/ladmakhi81/learnup
- Owner: ladmakhi81
- Created: 2025-04-02T14:18:36.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-04-27T12:45:53.000Z (6 months ago)
- Last Synced: 2025-06-26T10:52:08.150Z (4 months ago)
- Topics: docker, golang, gorm, hls, koanf, logrus, minio, postgres, redis, resty, smtp, tus, vod
- Language: Go
- Homepage:
- Size: 479 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Learning Management System (LMS)
A feature-rich **Learning Management System (LMS)** built with **Golang**, **GORM**, and **Tus protocol** for efficient learning management. This system supports **students, teachers, supporters, admins, and super admins** with a wide range of functionalities.
## 🚀 Features
### 🔹 Super Admin
- Manage entire system, including:
- **Tickets, Forums, Courses, Teachers, Students, Admins**
- **Permissions & Roles, Banners, Categories, Orders**
- **Transactions, Notifications, Carts, Course Videos & Participants**### 🔹 Admin
- Verify new admins and courses
- Set course fees
- Answer support tickets
- Manage forums### 🔹 Teachers
- Create and manage courses
- Verify discount coupons (created by admin)
- Upload course videos
- Manage forums and respond to questions/comments
- Manage enrolled students### 🔹 Students
- Comment and like courses
- Participate in webinars
- Purchase courses
- Create transactions via payment gateway## 🛠Tech Stack
- **Backend:** Golang
- **ORM:** GORM
- **File Uploads:** Tus Protocol
- **Database:** PostgreSQL
- **Authentication:** JWT-based authentication
- **Messaging & Notifications:** WebSockets & Email notifications## 📌 Installation
### Prerequisites
- Golang installed (v1.20+ recommended)
- PostgreSQL/MySQL database setup
- Docker (optional for containerized deployment)### Steps
```sh
# Clone the repository
git clone https://github.com/yourusername/lms.git
cd lms# Install dependencies
go mod tidy# Setup environment variables
cp .env.example .env
# Edit .env file with your configurations# Run database migrations
go run main.go migrate# Start the server
go run main.go
```