Skip to content

sg1345/MaxEndLabs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

97 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ MaxEndLabs

Demo Video

.NET Version ASP.NET Core License


Live Demo

πŸ”— MaxEndLabs OnlineStore on Render

Demo Credentials: Admin

User

Stripe Cretid Cart for testing

  • Cart Number: 5555 5555 5555 4444
  • Date: Any date
  • CVC: Any 3 digits

(Deployed live on Render using a PostgreSQL database. For local development, the application utilizes SQL Server with a zero-configuration automated seeding process (EnsureCreated).)


πŸ“‹ Table of Contents


πŸ“– About the Project

MaxEndLabs is a layered ASP.NET Core (.NET 8) MVC web application that simulates a modern e-commerce platform. It enables users to browse products, explore detailed product variants, manage a personalized shopping cart, and place orders, while administrators can manage the product catalog through full CRUD operations and order control.

The application is built using a clean, multi-layered architecture, separating the presentation layer (MVC), business logic (services), and data access (Entity Framework Core). This structure promotes maintainability, scalability, and testability while demonstrating best practices such as service abstraction, dependency injection, and Fluent API configurations.

The project also integrates ASP.NET Core Identity for authentication and user management, providing a solid foundation for role-based access control and secure user interactions.


πŸ› οΈ Technologies Used

Technology Version Purpose


ASP.NET Core MVC 8.0 Web framework Entity Framework Core 8.0 ORM / database access ASP.NET Core Identity 8.0 Authentication and user management SQL Server -- Application database Bootstrap 5.x Frontend styling Razor Views -- Server-side UI rendering


βœ… Prerequisites

  • .NET SDK 8.0+
  • Visual Studio 2022 or VS Code
  • SQL Server (LocalDB or full SQL Server)
  • Git

πŸ“ Project Structure

MaxEndLabs.sln
β”‚
β”œβ”€β”€ MaxEndLabs.Data/
β”œβ”€β”€ MaxEndLabs.Data.Common/
β”œβ”€β”€ MaxEndLabs.Data.Models/
β”œβ”€β”€ MaxEndLabs.Services.Core/
β”œβ”€β”€ MaxEndLabs.Services.Models/
β”œβ”€β”€ MaxEndLabs.Services.Tests/
β”œβ”€β”€ MaxEndLabs.ViewModels/
β”œβ”€β”€ MaxEndLabs.Web/
β”œβ”€β”€ MaxEndLabs.Web.Common/
└── MaxEndLabs.GCommon

✨ Features

  • Auth & 2FA: User registration, login, and Google Authenticator (QR code) support.
  • Product Catalog: Categories, search, and detailed variants.
  • Shopping Cart: Real-time cart management and Stripe payment integration.
  • Admin Dashboard: Full CRUD for products/variants and order status management.
  • Bot Protection: Integrated Google reCAPTCHA for secure forms.
  • Architecture: Multi-layered project structure with EF Core Code-First

πŸ’» Usage

Account & Security

  • Access: Login/Register is required to shop.
  • User Manager: All users can update profiles and enable 2FA (Authenticator App/QR Code) for 6-digit security codes.

πŸ‘€ Customer Workflow

  1. Shop: Browse the catalogue and select product.
  2. Cart: Add, or remove items (only available when logged in).
  3. Checkout: Create an order and pay securely via Stripe.
  4. Orders: Track personal order history and status on the homepage.

πŸ›‘οΈ Administrator Workflow

  • Product Management: Full CRUD (Create/Edit/Delete) for products and variants.
  • Order Management: View all customer orders and update status.
  • Catalogue: Quick link in the header to view products as they appear to users.
  • Note: Admins cannot use the shopping cart or make purchases.

🚦 Quick Access Guide

Feature Guest Customer Admin
Browse Products βœ… βœ… βœ…
Shopping Cart ❌ βœ… ❌
Order/Pay ❌ βœ… ❌
Product CRUD ❌ ❌ βœ…
Manage 2FA ❌ βœ… βœ…

πŸ” Administrative access

Creating, editing and deleting products and product variants is restricted to users with the Admin role.

The application contains a pre-seeded administrator account. To access the product and variant management functionality, log in with:

The admin account is seeded automatically when the application starts.

Only users with the Admin role can create, edit and delete products and product variants.


πŸ‘¨β€πŸ’Ό Additional User Access

The application contains a pre-seeded user account specifically designed to demonstrate user-facing features without requiring manual data entry.his account comes pre-loaded with a robust history of 30 orders to showcase the application's pagination, sorting, and UI capabilities.

To explore a fully populated customer dashboard, log in with:


πŸ“„ License

MIT License.


πŸ“¬ Contact

Dimitar Karabashev – https://github.com/sg1345

Project Link: https://github.com/sg1345/MaxEndLabs


Home Page Guest Home Page User Categories Products Product Details User Order Details User Home Page Admin Product Manager Admin Create Product Admin Variant Manager Admin Product Details Admin Edin Product Admin Order Manager Admin Order Details Admin

About

OnlineStore for Sportswear and supplaments

Resources

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.txt

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors