Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

E-Commerce API

A scalable ASP.NET Core Web API built using Onion Architecture for managing an e-commerce platform. The solution is structured into four independent projects with clear separation of concerns, enabling maintainability, scalability, and clean dependency management.

🚀 Highlights

  • Built using ASP.NET Core Web API and Entity Framework Core
  • Structured using Onion Architecture with four independent projects
  • Implemented Repository, Generic Repository, and Unit of Work patterns
  • Applied Dependency Injection throughout the application
  • Secured the API using JWT Authentication
  • Integrated Redis for shopping cart caching
  • Asynchronous database operations with Entity Framework Core
  • SQL Server as the primary database

🏗️ Architecture

                    E_Commerce.API
        (Controllers, Middleware, Program.cs)
                         │
                         ▼
              E_Commerce.Application
        (Services, Business Logic, Interfaces)
                         │
                         ▼
                 E_Commerce.Domain
      (Entities, Contracts, Business Models)
                         ▲
                         │
          E_Commerce.Infrastructure
 (EF Core, DbContext, Repositories, Identity,
     Migrations, Seeding, External Services)

        SQL Server Database
                 +
             Redis Cache

📂 Solution Structure

E_Commerce.sln
├── E_Commerce.Domain
│   ├── Entities
│   └── Contracts (Interfaces)
│
├── E_Commerce.Application
│   ├── Service Interfaces
│   └── Service Implementations
│
├── E_Commerce.Infrastructure
│   ├── DbContext
│   ├── Repository Implementations
│   ├── Unit of Work
│   ├── Entity Configurations
│   ├── Migrations
│   └── Data Seeding
│
└── E_Commerce.API
    ├── Controllers
    ├── Middleware
    ├── Program.cs
    └── Dependency Injection

🛠 Tech Stack

  • ASP.NET Core Web API
  • C#
  • Entity Framework Core
  • SQL Server
  • Redis
  • JWT Authentication
  • ASP.NET Identity
  • LINQ

🎯 Design Patterns

  • Onion Architecture
  • Repository Pattern
  • Generic Repository Pattern
  • Unit of Work Pattern
  • Specification Pattern
  • Dependency Injection

📌 Features

  • User Authentication & Authorization (JWT)
  • Product Management
  • Brand & Type Management
  • Shopping Cart
  • Order Processing
  • Redis Shopping Cart Cache
  • Product Filtering & Pagination
  • Entity Framework Core Migrations
  • Database Seeding

👨‍💻 What This Project Demonstrates

This project demonstrates enterprise-level backend development using ASP.NET Core Web API and Onion Architecture. It emphasizes separation of concerns by organizing the solution into Domain, Application, Infrastructure, and API layers with inward-only dependencies. The project showcases scalable API development, secure JWT authentication, Repository and Unit of Work patterns, Specification Pattern, Redis caching, and clean software architecture principles commonly used in modern .NET applications.

About

RESTful E-Commerce API built with ASP.NET Core using Onion Architecture and the Specification Pattern, featuring secure authentication, product management, shopping carts, order processing, and scalable backend design.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages