Skip to content

A Spring Boot-based RESTful LMS API for managing courses, users, and assessments. Uses MySQL for storage and tested via Postman.

Notifications You must be signed in to change notification settings

DuaA-A/Learning-MS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java-Based Learning Management System (LMS)

A Java-based Learning Management System (LMS) built with Spring Boot as a RESTful API. The system manages online courses, assessments, and user roles for students and instructors. Core functionalities include course creation, user and role management, performance tracking, and assessment handling. It uses a MySQL database for persistent storage and has been thoroughly tested using Postman.

Contributors

Key Components

1. User Management

  • User Types: Admin, Instructor, Student
  • Admin: Manages system settings, creates users, and manages courses.
  • Instructor: Creates courses, manages content, adds assignments and quizzes, grades students, and removes students.
  • Student: Enrolls in courses, accesses materials, submits assignments, and views grades.
  • Features:
    • User registration and login (role-based access)
    • Profile management

2. Course Management

  • Course Creation: Allows instructors to create courses with details, upload media files, and organize lessons.
  • Enrollment Management: Students can enroll in courses, and admins/instructors can view enrolled students.
  • Attendance Management: OTP-based attendance tracking for lessons.

3. Assessment & Grading

  • Quiz Creation: Supports various question types and randomized question selection.
  • Assignment Submission: Students can upload assignments for instructor review.
  • Grading and Feedback: Automated quiz feedback and manual assignment feedback.

4. Performance Tracking

Instructors can track student progress, quiz scores, assignment submissions, and attendance.

5. Notifications

  • System notifications for enrollments, grades, and updates.
  • Unread and read notification views.
  • Instructors receive notifications for student enrollments.

Bonus Features

  • Role-Based Access Control: Authentication and authorization using Spring Security.
  • Performance Analytics: Visual reports (charts) and Excel exports for student performance.
  • Email Notifications: Similar to system notifications for updates and grades.

Technical Requirements

  • Backend: Java with Spring Boot for RESTful APIs
  • Database: MySQL, PostgreSQL, or SQLite
  • Testing: JUnit for unit testing
  • Version Control: Git

About

A Spring Boot-based RESTful LMS API for managing courses, users, and assessments. Uses MySQL for storage and tested via Postman.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages