π MaxEndLabs OnlineStore on Render
Demo Credentials: Admin
- Email: admin@labs.com
- Password: admin
User
- Email: test@labs.com
- Password: admin
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).)
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.
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
- .NET SDK 8.0+
- Visual Studio 2022 or VS Code
- SQL Server (LocalDB or full SQL Server)
- Git
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
- 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
- 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.
- Shop: Browse the catalogue and select product.
- Cart: Add, or remove items (only available when logged in).
- Checkout: Create an order and pay securely via Stripe.
- Orders: Track personal order history and status on the homepage.
- 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.
| Feature | Guest | Customer | Admin |
|---|---|---|---|
| Browse Products | β | β | β |
| Shopping Cart | β | β | β |
| Order/Pay | β | β | β |
| Product CRUD | β | β | β |
| Manage 2FA | β | β | β |
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:
- Email: admin@labs.com
- Password: admin
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.
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:
- Email: test@labs.com
- Password: admin
MIT License.
Dimitar Karabashev β https://github.com/sg1345
Project Link: https://github.com/sg1345/MaxEndLabs













