Brahim Elhoube

Web Development

Coffee & Restaurant Management System

A Laravel, MySQL, and Vue.js restaurant management system with POS workflows, shift tracking, admin controls, statistics, and receipt printing.

Abstract

This project implements a restaurant management system with a point-of-sale workflow, administrative controls, shift reporting, and receipt printing. Built with Laravel, MySQL, and Vue.js, the system connects front-of-house ordering with back-office management.

Problem

Restaurants and coffee shops need to coordinate table orders, kitchen communication, cashier shifts, employee management, menu updates, discounts, and daily income reporting. Without an integrated system, these operations can become fragmented across paper tickets, manual calculations, and informal communication.

Method

  • POS interface
  • Admin dashboard

The system gives administrators the ability to manage restaurant data and track sales and orders. Waiters can submit orders, monitor order status, and support daily income tracking.

Point of Sale (POS) Interface

Designed for both cashiers and waitstaff, the POS application provides a simple way to manage orders. Users can easily choose tables, take orders, and track the whole process, even approving or canceling orders.

When orders are ready, the system automatically informs the kitchen using a receipt printer, making food prep smoother.

At the end of the day, the cashier finishes their shift, and the system compiles all orders automatically, including details and total amounts.

Admin Dashboard

Giving administrators total control over the restaurant, the dashboard lets them manage everything easily. They can create, change, or remove:

  • Categories
  • Menu Items
  • Employees
  • Discounts

Another important thing in the dashboard is statistics. By delivering a comprehensive overview of shifts details, order patterns, inventory status, and income streams, the system empowers the admin to navigate the coffee's operations with precision and foresight. This not only leads to smoother day-to-day management but also contributes to the coffee's overall growth and success.

Ticket Printing

This is the most challenging part because I had to deal with networking problems and printer driver integration with PHP.

Using ESC/POS printer integration with PHP, the system was able to print receipts and notify kitchens of incoming orders, which saves time and reduces communication delays.

Outcome

The project produced a practical operations system for restaurant workflows. It improved the connection between ordering, kitchen notification, shift closure, and administrative reporting while giving me direct experience with full-stack development and hardware-adjacent printer integration.