webprojects / prompts.txt
GilbertKambu's picture
Add 3 files
913401f verified
Hereโ€™s a detailed description and functional breakdown for your Ghost Burger fast food system, based on your requirements. The system will be developed in PHP, likely using Laravel for structure (highly recommended), and will feature user authentication, role-based access control, billing, item management, reporting, MPesa integration, and e/physical receipts. ๐Ÿ” Ghost Burger โ€“ System Specification (PHP-based) 1. System Overview Ghost Burger is a fast food ordering and billing system built in PHP. It supports user authentication for staff and administrators, each with distinct roles and permissions. The platform allows for fast order processing through clickable images of menu items and provides options for printing or emailing receipts. Admins manage users, menu items, payments, and reports, while staff members handle day-to-day orders and billing. 2. User Roles & Authentication ๐Ÿ” Authentication Page Login page for all users (staff and admins). Username and password login (can use Laravel Breeze or Jetstream). Role-based redirection after login. ๐Ÿ‘ค User Roles Administrator Full access to all pages and controls. Can add/edit/delete users. Can add/delete menu items. Can view system reports and transactions. Can manage MPesa payment integration. Staff Access to: Billing page. Order-taking interface (clickable food item images). Print or send e-receipts. Cannot modify database content (menu, users, etc.). 3. Pages & Features ๐Ÿงพ Billing Page (Staff & Admin Access) Display menu as image tiles with food names (clickable to add to order). Live order summary (with quantities, price calculation). Option to: Print receipt (physical via connected printer). Send e-receipt via email. Option to choose payment method: Cash / MPesa. ๐Ÿ’ผ Admin Dashboard a. User Management Add new users (staff or admin). Delete users. Reset passwords or update user details. b. Item Management Add Item Page: Fields: Name, Category, Image Upload, Price. Delete Item Page: List of current items with delete button. c. Reports Page Daily/weekly/monthly reports. Filters: Date range, item/category, payment method. Export as PDF or CSV. Printable view. d. MPesa Integration Integration with MPesa STK Push API. Record MPesa transaction IDs in database. Show confirmation on billing page when payment is successful. 4. Database Structure (MySQL) ๐Ÿ”ง Tables Overview plaintext Copy Edit users (id, name, email, password, role) menu_items (id, name, image_path, price, category) orders (id, user_id, total_price, payment_method, created_at) order_items (id, order_id, menu_item_id, quantity, price) payments (id, order_id, payment_method, mpesa_transaction_id, created_at) receipts (id, order_id, receipt_type, sent_to, created_at) 5. Technologies Used Backend: PHP (Laravel 12 recommended) Frontend: Blade + Vue (optional but ideal for interactive UI) Authentication: Laravel Breeze or Jetstream Database: MySQL Printing: JavaScript print trigger / PDF for e-receipts MPesa: Daraja API for STK push Image Handling: Laravel file upload and storage system 6. Extra Features (Optional) Staff activity logging. Admin dashboard analytics: Top-selling items, peak hours, etc. Receipt preview before printing/sending.