A scalable ASP.NET Core Web API backend powering an e-commerce platform with authentication, role-based authorization, product management, and commerce workflows.
Built using a layered architecture with .NET 8, Entity Framework Core, SQL Server, and JWT authentication.
- JWT authentication
- Role-based access control (RBAC)
- Custom permission middleware
- User and role management
- Categories
- Brands
- Products
- Offers
- Coupons
- Shopping cart
- Wishlist
- Orders and order items
- Product reviews
- RESTful API design
- Swagger/OpenAPI documentation
- Layered architecture
- Repository + Unit of Work pattern
- Entity Framework Core integration
Client Applications
↓
ASP.NET Controllers
↓
Service Layer
↓
Repositories + Unit Of Work
↓
Entity Framework Core
↓
SQL Server
- ASP.NET Core Web API (.NET 8)
- C#
- Entity Framework Core
- SQL Server
- JWT Authentication
- AutoMapper
- Swagger / OpenAPI
QuickPick-Commerce-API/
├── eCommerceAPI
│ ├── Controllers
│ ├── Request Models
│ ├── AutoMapper
├── eCommerceAPI.Core
│ ├── Models
│ ├── DbContext
│ ├── Repositories
│ ├── DTOs
├── eCommerce.Service
│ ├── Business Logic
│ ├── Authentication
│ ├── Permission Middleware
- Authentication
- Users
- Roles
- Permissions
- Products
- Categories
- Brands
- Coupons
- Cart
- Wishlist
- Orders
- Reviews
Clone repository:
git clone <repo-url>Install dependencies:
dotnet restoreBuild:
dotnet buildRun:
dotnet runSwagger:
https://localhost:7274/swagger
- Password hashing
- Docker support
- Automated testing
- Payment integration
- Database migrations
- Standardized API responses
This project was built to strengthen backend engineering skills around API design, authentication, layered architectures, and real-world commerce workflows.