A Laravel 13 application implementing Role-Based Access Control (RBAC) using the Spatie Laravel Permission package.
This project demonstrates a complete role-based product management system with authentication, authorization, product management, category management, and customer-facing product browsing.
- User Registration
- User Login
- Secure Password Hashing
- Form Validation
- Role Assignment
- Full system access
- Manage products
- Delete products
- Manage categories
- View users
- Edit users
- Assign roles
- Create products
- Edit products
- View product list
- Create categories
- Manage category assignments
- Upload and crop product images
- Register and login
- View product listings
- View product details
- Create products
- Update products
- Product listing
- Category assignment
- Image upload
- Image cropping with Cropper.js
- Laravel Storage integration
- Create categories
- Assign products to categories
- Eloquent relationships
- Laravel 13
- PHP 8.3+
- MySQL
- Laravel Breeze
- Spatie Laravel Permission
- Has Roles
- Has Permissions
- Belongs To Category
- Has Many Products
composer install
npm install
php artisan serve
npm run dev
| Role | Permissions |
|---|---|
| Admin | Full Access |
| Manager | Product & Category Management |
| Customer | View Products |
composer require laravel/breeze --dev
php artisan breeze:installcomposer require spatie/laravel-permission