A simple Catering Service and Ordering System built with Laravel 10 + Vite, designed for small catering businesses. The system supports Admin and User roles, online ordering, cart management, and order processing.
-
Backend: Laravel 10
-
Frontend Build Tool: Vite
-
UI / JS Libraries:
- Bootstrap 5
- jQuery
- DataTables
- Axios
- AOS
- Swiper
- Toastr
- Highcharts
-
Database: MySQL (or compatible)
"scripts": {
"dev": "vite",
"build": "vite build"
},
"devDependencies": {
"axios": "^1.1.2",
"laravel-vite-plugin": "^2.0.1",
"vite": "^7.3.0"
},
"dependencies": {
"@popperjs/core": "^2.11.8",
"aos": "^2.3.4",
"bootstrap": "^5.3.3",
"datatables.net": "^2.0.7",
"datatables.net-dt": "^2.0.7",
"fslightbox": "^3.4.1",
"highcharts": "^11.4.1",
"jquery": "^3.7.1",
"sass": "^1.77.2",
"swiper": "^11.1.3",
"toastr": "^2.1.4"
}- Full system access
- Manage users, categories, products, and orders
- Can register and login
- Browse menu, manage cart, place orders, and view order history
- Home / Landing Page
- Menu Page
-
Login (Email & Password)
-
Register (User only)
- Name
- Phone
- Address
- Password
- Confirm Password
- Overview of system data
- DataTable list of users
- Toggle user status: Active / Inactive
- DataTable list of categories
- Add / Edit category (modal)
- Delete category (confirmation modal)
- Toggle category status: Active / Inactive
-
DataTable list of products
-
Add / Edit product (modal)
- Product Image
- Product Name
- Category (select)
- Description (optional)
- Price
- Stock
-
Toggle product status: Active / Inactive
-
DataTable columns:
- Order Number
- Receiver
- Product Quantity
- Grand Total
- Order Type: Acquire / Pickup / Delivery
- Status: PENDING / ACCEPTED / CANCELLED
- Created At
-
View order details (modal)
-
Admin can manage order status
-
DataTable columns:
- Order Number
- Receiver
- Product Quantity
- Grand Total
- Order Type
- Status
- Created At
-
View order details (modal)
-
Cancel order if status is not yet ACCEPTED
-
DataTable:
- Product
- Quantity
- Available Stock
- Delete item
-
Multi-select cart items for checkout
-
Order Details
- Receiver Name
- Phone
- Address
- Order Type: Acquire / Pickup / Delivery
-
Order Summary
- Increase / Decrease product quantity
- Auto-compute subtotal & grand total
-
Submit Order button
git clone <repository-url>
cd catering-services-001composer installnpm installcp .env.example .env
php artisan key:generateUpdate .env database configuration:
DB_DATABASE=your_database
DB_USERNAME=your_username
DB_PASSWORD=your_passwordphp artisan migrate --seedor
php artisan db:seedTerminal 1 (Laravel backend):
php artisan serveTerminal 2 (Vite assets):
npm run devAccess the app at:
http://127.0.0.1:8000
- Email: admin@gmail.com
- Password: User123
- Email: user@gmail.com
- Password: User123
- Home page preview image:
Developed using Laravel + Vite 🚀
Feel free to enhance, refactor, or extend this system.



