Skip to content

3limssmile/URMS

Repository files navigation

🍴 URMS (Universal Restaurant Management System)

GitHub stars GitHub forks GitHub issues GitHub license

A comprehensive PHP-based system for streamlined restaurant and cafe operations, encompassing ordering, kitchen management, waiter services, menu, and inventory control.

📖 Overview

URMS (Universal Restaurant Management System) is a web-based application designed to digitalize and optimize various aspects of restaurant and cafe management. Built with plain PHP, HTML, and CSS, it provides a straightforward solution for handling customer orders through a self-service kiosk, enabling waiters to manage tables and orders efficiently, offering kitchen staff a clear view of incoming orders, and allowing administrators to control menu items and inventory. This system aims to reduce manual errors, improve service speed, and provide better operational oversight.

✨ Features

  • Customer Kiosk Ordering: Self-service interface for customers to browse the menu and place orders.
  • Waiter Panel: Dedicated portal for waiters to manage tables, take new orders, update order statuses, and view customer requests.
  • Kitchen Display System (KDS): Real-time display of new and in-progress orders for kitchen staff, facilitating efficient food preparation.
  • Order Queue Display: A public-facing screen to show customers the status of their orders in a queue.
  • Menu Management: An administrative interface to add, edit, or remove menu items, including descriptions and pricing.
  • Inventory Management: Track and update stock levels for ingredients and menu items.
  • Secure Login: Separate login portals for different user roles (e.g., waiters).
  • Database Integration: Persistent storage for all operational data, including menu, orders, users, and inventory.

🖥️ Screenshots

Kiosk Interface

Waiter Panel

Kitchen Display

Menu Manager

Inventory Manager

🛠️ Tech Stack

Frontend:

HTML5 CSS3

Backend:

PHP

Database:

MySQL

⚡ Quick Start

Follow these steps to get your URMS instance up and running on a local development environment.

Prerequisites

Before you begin, ensure you have the following installed on your system:

  • Web Server: Apache or Nginx with PHP module enabled.
  • PHP: Version 7.x or higher.
  • Database Server: MySQL or MariaDB.

Installation

  1. Clone the repository

    git clone https://github.com/3limssmile/URMS.git
    cd URMS
  2. Place files on your web server Move all the project files into your web server's document root (e.g., /var/www/html/urms/ for Apache or /usr/share/nginx/html/urms/ for Nginx).

  3. Database setup

    • Create a new MySQL/MariaDB database (e.g., restaurant).
    CREATE DATABASE restaurant;
    • Create a database user and grant privileges (optional, but recommended for production).
    • Import your database schema.
      mysql -u your_username -p restaurant < path/to/your/restaurant.sql
  4. Configure database connection Open db_config.php and update the database connection details with your credentials:

    <?php
    $servername = "localhost"; // Your database host
    $username = "your_db_username"; // Your database username
    $password = "your_db_password"; // Your database password
    $dbname = "restaurant"; // The database name you created
    ?>
  5. Start your web server Ensure your Apache or Nginx web server is running.

    # Example for Apache on Ubuntu/Debian
    sudo systemctl start apache2
  6. Open your browser Visit http://localhost/urms/ (or the appropriate URL if deployed to a different path or domain).

📁 Project Structure

URMS/
├── .gitignore               # Specifies intentionally untracked files to ignore
├── LICENSE                  # MIT License file
├── README.md                # Project documentation: description, installation guide, usage instructions
├── db_config.php            # Database connection configuration
├── images/                  # Directory for storing static images (e.g., menu item photos)
├── index.php                # Main landing page or entry point
├── kelner_login.php         # Waiter login interface
├── kelner_panel.php         # Waiter's operational panel for managing orders
├── kiosk.php                # Customer self-service ordering kiosk
├── kolejka_display.php      # Display for showing order queue status
├── kuchnia.php              # Kitchen display interface for order preparation
├── menu_manager.php         # Admin panel for managing menu items
├── restaurant.sql           # SQL file containing database schema and initial data
├── style.css                # Global styles for the application
├── zamowienie_potwierdzenie.php # Page for order confirmation
└── zapasy.php               # Inventory and stock management interface

⚙️ Configuration

Database Configuration

The db_config.php file is crucial for establishing a connection to your MySQL/MariaDB database. Ensure the following variables are correctly set:

Variable Description Example Value
$servername Database host localhost
$username Database username root
$password Database password mypassword
$dbname Database name restaurant

🚀 Deployment

To deploy this application to a production environment:

  1. Follow the Installation steps outlined above on your production web server.
  2. Ensure db_config.php uses production-ready database credentials and a secure database user.
  3. For security, consider configuring your web server to hide sensitive files or restrict direct access to files that are not meant for public viewing (e.g., db_config.php).
  4. Ensure proper file permissions are set on your server.

🤝 Contributing

We welcome contributions to URMS! If you'd like to improve this project, please consider the following:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
    git checkout -b feature/your-feature-name
  3. Implement your changes.
  4. Test thoroughly.
  5. Commit your changes with a descriptive message.
    git commit -m "feat: Add new feature for X"
  6. Push your branch to your forked repository.
  7. Open a Pull Request against the main branch of this repository.

Development Setup for Contributors

The development setup is identical to the Quick Start instructions. Ensure you have a local PHP and MySQL/MariaDB environment.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • Built by 3limssmile.
  • Utilizes standard PHP, HTML, and CSS technologies.

📞 Support & Contact

  • 🐛 Issues: GitHub Issues - for bug reports and feature requests.

⭐ Star this repo if you find it helpful!

Made with ❤️ by 3limssmile

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors