Skip to content

ArjunPatil15/SkillBazaar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

16 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ Skill-Bazar - E-Learning Platform

Java JSP MySQL Bootstrap License: MIT

Skill-Bazzar is a comprehensive e-learning platform that connects students, instructors, and administrators in a seamless educational ecosystem. Built with Java Enterprise technologies, it provides robust course management, user authentication, and payment processing capabilities.

✨ Features

🎯 Multi-Role User Management

  • Students: Browse courses, make purchases, access learning materials
  • Instructors: Create and manage courses, upload lectures, track sales
  • Administrators: Oversee platform operations, manage users, monitor transactions

πŸ“š Course Management System

  • Dynamic course creation and editing
  • Video lecture uploads and management
  • Course categorization and search functionality
  • Sales tracking and analytics

πŸ” Security & Authentication

  • Role-based access control (RBAC)
  • Secure login validation
  • Session management
  • Password protection

πŸ—οΈ Architecture

Skill-Bazzar/
β”œβ”€β”€ src/main/java/com/ninfinity/
β”‚   β”œβ”€β”€ controller/          # Servlet controllers
β”‚   β”œβ”€β”€ dao/                # Data Access Objects
β”‚   β”œβ”€β”€ entities/           # JPA entities
β”‚   └── helper/             # Utility classes
β”œβ”€β”€ src/main/webapp/        # Web resources
β”‚   β”œβ”€β”€ WEB-INF/           # Configuration files
β”‚   β”œβ”€β”€ JSP pages          # View templates
β”‚   └── Static resources   # CSS, JS, images
└── Database                # MySQL database schema

πŸš€ Technology Stack

Component Technology Version
Backend Java Servlet/JSP Java 8+
Database MySQL 5.7+
Frontend HTML5, CSS3, JavaScript -
UI Framework Bootstrap 4.x
Server Apache Tomcat 8.5+
Build Tool Maven 3.6+

πŸ“‹ Prerequisites

Before running this application, ensure you have the following installed:

  • Java Development Kit (JDK) 8 or higher
  • Apache Tomcat 8.5 or higher
  • MySQL Database 5.7 or higher
  • Maven 3.6 or higher (for building)
  • Git (for version control)

πŸ› οΈ Installation & Setup

1. Clone the Repository

git clone https://github.com/ArjunPatil15/SkillBazar.git
cd skill-bazzar

2. Database Setup

-- Create database
CREATE DATABASE skill_bazar;
USE skill_bazar;

-- Import the provided SQL schema
-- (Database schema file will be provided separately)

3. Configure Database Connection

Update the database connection parameters in src/main/java/com/ninfinity/dao/DatabaseConnect.java:

// Update these values according to your MySQL configuration
private static final String URL = "jdbc:mysql://localhost:3306/skill_bazar";
private static final String USERNAME = "your_username";
private static final String PASSWORD = "your_password";

4. Build the Project

mvn clean compile
mvn package

5. Deploy to Tomcat

  1. Copy the generated WAR file to Tomcat's webapps directory
  2. Start Tomcat server
  3. Access the application at http://localhost:8080/skill-bazzar

πŸ”§ Configuration

Environment Variables

Set the following environment variables if needed:

export DB_HOST=localhost
export DB_PORT=3306
export DB_NAME=skill_bazar
export DB_USER=your_username
export DB_PASSWORD=your_password

Application Properties

Key configuration files:

  • WEB-INF/web.xml - Web application configuration
  • META-INF/MANIFEST.MF - Application manifest
  • Database connection settings in DAO classes

πŸ“– Usage

For Students

  1. Registration: Create a new account with email and password
  2. Course Discovery: Browse available courses by category
  3. Purchase: Select and purchase desired courses
  4. Learning: Access course materials and video lectures
  5. Progress Tracking: Monitor learning progress

For Instructors

  1. Account Setup: Register as an instructor
  2. Course Creation: Add new courses with descriptions and pricing
  3. Content Management: Upload video lectures and course materials
  4. Analytics: Track course sales and student engagement
  5. Revenue Management: Monitor earnings and payment status

For Administrators

  1. User Management: Oversee student and instructor accounts
  2. Platform Monitoring: Track overall system performance
  3. Transaction Oversight: Monitor payment processing and sales
  4. Content Moderation: Ensure quality and compliance

πŸ“Š Performance Optimization

  • Database Indexing: Optimized database queries
  • Connection Pooling: Efficient database connection management
  • Caching: Strategic data caching implementation
  • Resource Optimization: Optimized static resource delivery

🀝 Contributing

We welcome contributions to improve Skill-Bazzar! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contribution Guidelines

  • Follow Java coding conventions
  • Add appropriate comments and documentation
  • Include unit tests for new features
  • Ensure all tests pass before submitting

πŸ› Issue Reporting

If you encounter any bugs or have feature requests:

  1. Check existing issues to avoid duplicates
  2. Create a new issue with detailed description
  3. Include steps to reproduce the problem
  4. Provide system information and error logs

πŸ™ Acknowledgments

  • Bootstrap for the responsive UI framework
  • MySQL for the robust database system
  • Apache Tomcat for the application server
  • Java Community for the excellent

Made with ❀️ by Arjun

About

Java-based e-learning marketplace for creating, selling, and enrolling in courses.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages