MumbleEdu is an online course platform designed to help students and lifelong learners discover and learn new skills. Built with Java and Spring Boot, it leverages MySQL for database management, Docker for containerization, Postman for API testing, and Swagger for API documentation.
- User Management: Supports different user roles including Tutor and Student, both extending from a base User class.
- Course Management: Tutors can create and manage courses, while students can enroll in courses.
- Enrollment: Students can enroll in courses, and their enrollment status is tracked.
- API Documentation: Comprehensive API documentation using Swagger.
- Containerization: Docker support for easy deployment and scalability.
- Java: Core programming language.
- Spring Boot: Framework for building the application.
- MySQL: Database management system.
- Docker: Containerization platform.
- Postman: Tool for API testing.
- Swagger: API documentation tool.
- Java 11 or higher
- Docker
- MySQL
- Postman (optional, for API testing)
Clone the repository to your Desktop:
-
Open the cmd
-
cd Desktop:
cd Desktop
-
Clone the repo:
git clone https://github.com/yagmurbarank/OnlineCoursePlatform-Java-Spring
-
cd Project File:
cd OnlineCoursePlatform-Java-Spring
-
Set up the database:
Create a MySQL database named OnlineCoursePlatform-Java-Spring
-
Update the application.properties file with your MySQL credentials.
-
Run with Docker:
docker-compose up --build
-
Build and run the application:
./mvnw spring-boot:run
Access the API documentation at http://localhost:8081/swagger-ui.html once the application is running.
- Tutors: Can create, update, and delete courses.
- Students: Can browse available courses and enroll in them.
- Enrollment: Students’ enrollments are tracked and managed.