Git Product home page Git Product logo

sakthivelmadhu / growskillelearningplatform Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 127 KB

GrowSkill is an e-learning platform that provides various paid online live courses in Baking, Makeup, and Handicrafts. The platform allows users to enroll in courses, make payments, attend live sessions, watch course recordings, and download certificates upon completion.

Java 100.00%
h2-database jpa-repository maven springboot springbootstarterweb springboottest

growskillelearningplatform's Introduction

GrowSkill E-Learning Platform

Description

GrowSkill is an e-learning platform that provides various paid online live courses in Baking, Makeup, and Handicrafts. The platform allows users to enroll in courses, make payments, attend live sessions, watch course recordings, and download certificates upon completion.

User Journey

Enrollment Process

  1. User browses courses on the website.
  2. User selects a course of interest.
  3. User makes the necessary payment for the selected course.
  4. After payment, the user can attend the live course sessions on Zoom.
  5. At the end of the course, users can access course recordings and download a completion certificate.

Personal Details :

Name : SAKTHIVEL MADHU
Phone : 75388 37154
Email : [email protected]
github : https://github.com/SakthivelMadhu/GrowSkillElearningPlatform
Linkedin : https://www.linkedin.com/in/sakthivel-madhu-864647238/
Leetcode : https://leetcode.com/sakthi130597/

Modeling

Entity-Relationship Diagram (ERD)

Table courses {
course_id bigint [pk, increment]
title varchar
instructor varchar
}

Table users {
user_id bigint [pk, increment]
username varchar
}

Table enrollments {
enrollment_id bigint [pk, increment]
course_id bigint
user_id bigint
}

Ref: "courses"."course_id" < "enrollments"."course_id"
Ref: "users"."user_id" < "enrollments"."user_id"

Screenshot 2024-03-09 123757

Features

  1. Course Management:

    • Create, update, and delete courses.
  2. User Management:

    • Register and manage user accounts.
  3. Enrollment:

    • Allow users to enroll in courses.
  4. Payment:

    • Implement a payment system for course enrollment.
  5. Live Sessions:

    • Integrate Zoom links for live course sessions.
  6. Recordings:

    • Provide access to course recordings for enrolled users.
  7. Certificate Download:

    • Enable users to download certificates upon completing a course.

Implementation

Project Structure

GrowSkillElearningPlatform
|-- src
|   |-- main
|       |-- java
|           |-- com.growskill
|               |-- controller
|               |   |-- CourseController.java
|               |   |-- UserController.java
|               |-- model
|               |   |-- Certificate.java
|               |   |-- User.java
|               |   |-- Course.java
|               |   |-- Enrollment.java
|               |-- repository
|               |   |-- CertificateRepository.java
|               |   |-- UserRepository.java
|               |   |-- CourseRepository.java
|               |   |-- EnrollmentRepository.java
|               |-- service
|               |   |-- UserService.java
|               |   |-- CourseService.java
|               |   |-- EnrollmentService.java
|               |-- exception
|               |   |-- CourseNotFoundException.java
|               |   |-- UserNotFoundException.java
|               |   |-- EnrollmentNotFoundException.java
|-- resources
|   |-- application.properties
|-- test
    |-- java
        |-- com.growskill
            |-- controller
            |   |-- CourseControllerTest.java
            |   |-- UserControllerTest.java
            |-- service
                |-- UserServiceTest.java
                |-- CourseServiceTest.java
                |-- EnrollmentServiceTest.java

Getting Started

  1. Clone the repository.
  2. Make sure you have Java and Maven installed.
  3. Run mvn clean install to build the project.
  4. Run the application using mvn spring-boot:run or deploy the generated JAR file.

Usage

  • Access the application through the defined endpoints in the controllers.
  • Use the provided test classes to understand and extend functionality.

Contributing

Feel free to contribute by opening issues or submitting pull requests.

growskillelearningplatform's People

Contributors

sakthivelmadhu avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.