Skip to content

An ASP.NET Core MVC application for comprehensive online course management. This platform enables educators to create and manage courses while providing students with an interactive learning experience through structured content and quizzes.

Notifications You must be signed in to change notification settings

mo-zekry/OnlineLearningPlatform

Repository files navigation

OnlineLearningPlatform

Overview

An ASP.NET Core MVC application for comprehensive online course management. This platform enables educators to create and manage courses while providing students with an interactive learning experience through structured content and quizzes.

Features

User Management

  • Role-based authentication (Admin, Instructor, Student)
  • User profile management with profile pictures
  • Secure identity management using ASP.NET Core Identity

Course Management

  • Create, edit, and delete courses
  • Organize content into modules and lessons
  • Rich text content support
  • Video integration capabilities
  • Course pricing and enrollment management

Payment Integration

  • Secure payment processing with Stripe
  • Course pricing management
  • Payment history tracking
  • Refund handling capabilities

Technical Features

  • Entity Framework Core for data management
  • SQL Server database backend
  • CRUD operations for all entities
  • Custom authorization policies
  • Unite Of Work

Prerequisites

  • .NET 9.0 SDK
  • SQL Server 2019 or later
  • Stripe account for payment processing (optional)
  • Visual Studio 2022 or VS Code
  • Node.js (for frontend asset management)

Getting Started

  1. Clone the repository:
git clone https://github.com/yourusername/OnlineLearningPlatform.git
  1. Configure the database connection in appsettings.json:
{
  "ConnectionStrings": {
    "DefaultConnection": "Your-Connect-string"
  }
}
  1. Run database migrations:
dotnet ef database update
  1. Configure Stripe settings (optional):
{
  "Stripe": {
    "SecretKey": "your_stripe_secret_key",
    "PublishableKey": "your_stripe_publishable_key"
  }
}
  1. Build and run the project:
dotnet build
dotnet run

Project Structure

  • Context/: Entity Framework DbContext and configurations
  • Controllers/: MVC controllers handling application logic
  • Models/: Domain models representing business entities
  • ViewModels/: DTOs for view-specific data
  • Views/: Razor views for the user interface
  • Repositories/: Data access layer implementation
  • Policy/: Custom authorization policies
  • wwwroot/: Static files (CSS, JavaScript, images)

About

An ASP.NET Core MVC application for comprehensive online course management. This platform enables educators to create and manage courses while providing students with an interactive learning experience through structured content and quizzes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •