The Online Learning Management System is a web-based application that enables educational institutions and individual instructors to manage their courses and course materials. The platform will allow registered users to create and manage their courses, upload course materials such as lectures, assignments, and quizzes, and grade student submissions. The application will use Spring Boot for the backend and JWT authentication to secure the API endpoints.
- User registration and login
- User profile management
- Course creation and management
- Course materials upload and management
- Student registration and enrollment in courses
- Student submissions and grading
- Course search and filtering
- JWT token-based authentication and authorization
- Spring Boot framework for the backend
- Spring Data JPA for data persistence
- MySQL or PostgreSQL for database management
- Spring Security for JWT-based authentication and authorization
- Swagger for API documentation
- Maven for dependency management
- Git for version control
To run the Online Learning Management System, follow these steps:
- Clone the repository using Git.
- Navigate to the project directory.
- Run
mvn clean install
to install dependencies and build the project. - Start the application using
mvn spring-boot:run
. - Open your web browser and navigate to
http://localhost:8080
to access the application.
Users will be able to register for an account with the Online Learning Management System by providing their basic information such as name, email, and password. Once registered, they will be able to log in to their account to access the features of the application.
Registered users will be able to manage their profile information such as their name, contact details, and preferences. They will also be able to view their course history and progress.
Registered users will be able to create courses, including details such as course name, description, prerequisites, and syllabus. They will also be able to edit or delete their courses as needed.
Instructors will be able to upload course materials such as lectures, assignments, and quizzes. They will also be able to manage and organize their course materials.
Students will be able to register for an account and enroll in courses offered by instructors. They will also be able to view their enrolled courses and track their progress.
Instructors will be able to receive and grade student submissions such as assignments and quizzes. They will also be able to provide feedback and grades to students.
Users will be able to search for courses using keywords, filters, and categories. This will help them find courses that match their interests and requirements.
The application will use JSON Web Tokens (JWTs) for authentication and authorization. This will help ensure that only authorized users are able to access the API endpoints and perform actions such as creating courses or enrolling in courses.
This repository is contributed by @kartik1502, which mainly focuses on the Spring boot application using JWT Authentication.