BulkyWeb is a CRUD-based admin dashboard and inventory management system built using ASP.NET Core MVC, Entity Framework Core, and SQL Server. It demonstrates best practices in web development including N-Tier architecture, repository pattern, and full integration with user authentication and role management.
- ASP.NET Core MVC (.NET 7+)
- Entity Framework Core with SQL Server
- Bootstrap 5 responsive UI
- Repository + Unit of Work Pattern
- N-Tier architecture (Models, Data, Business Logic, UI)
- Identity-based authentication and authorization
- Role-based access (Admin, User, etc.)
- CRUD operations for Category, Product, and Company
- TempData + ViewBag/ViewData usage examples
- SweetAlert2 and Toastr for UI alerts
- Data validation with annotations
BulkyWeb/
├── Bulky.Data # Database context and migrations
├── Bulky.Models # Domain models and view models
├── Bulky.Utility # SD (static details), roles, constants
├── Bulky.DataAccess # Repositories + Unit of Work
├── BulkyWeb # ASP.NET Core MVC UI
└── wwwroot/ # Static files (css, js, images)- .NET SDK 7+
- SQL Server
- Visual Studio 2022 (recommended) or VS Code
- Clone the repo
git clone https://github.com/mohyeDev/BulkyWeb.git
cd BulkyWeb- Set up the database connection
- Open
appsettings.json - Replace the default connection string with your local SQL Server instance:
"ConnectionStrings": {
"DefaultConnection": "Server=.;Database=Bulky;Trusted_Connection=True;TrustServerCertificate=True;"
}- Apply Migrations and Create DB
dotnet ef database update- Run the application
dotnet run --project BulkyWebOr run via Visual Studio (F5)
If seeded:
- Email: admin@bulky.com
- Password: Admin123$ (check seed data or update from database)
- Admin: Full CRUD permissions
- User: Limited viewing access
- How to implement the Repository + UoW Pattern
- How to use Identity for role-based security
- How to structure a large MVC project
- How to use EF Core with data migrations
- How to use TempData, ViewBag, ViewData correctly
- Product image upload (local or cloud)
- Email confirmation & password recovery
- Dashboard analytics & charts
- AJAX-based search & pagination
Pull requests and forks are welcome!
- Open issues for bugs/features
- Fork and submit PRs with meaningful commits
Licensed under the MIT License. Use it freely in your learning or commercial projects with attribution.