/Restaurant-Management-System

This Restaurant Management System is a Python application facilitating menu display, ordering, and menu management. It presents customers with a user-friendly interface to explore the menu, place orders, and provide ratings for items.

Primary LanguagePython

Restaurant Management System

Table of Contents

Project Overview

This Restaurant Management System is a Python script designed to manage various aspects of a restaurant's operations, enhancing both customer and staff experiences. It utilizes a JSON-based menu structure for easy management and manipulation.

Installation

This project requires Python 3.12.1 or later. To set up the project:

  1. Ensure Python 3.12.1 or a later version is installed on your system. You can download Python from python.org.

  2. Clone or download the repository to your local machine.

      git clone https://github.com/jaiswalchitransh/Restaurant-Management-System.git
    
  3. Open the project in your preferred Python environment (e.g., IDE or terminal).

  4. Run the script (restaurant.py) and observe the output.

Usage

Run the script:

  python restaurant.py

Upon running the script, users are greeted with a welcoming interface providing options for menu display, item ordering, addition of new items, rating of items, and exiting the program. Detailed functionalities include:

  • Show Menu: Displays a list of items with their respective prices and average ratings.
  • Order Items: Allows users to select items by their IDs and quantity, calculates the total bill, and displays a summary of the order.
  • Add Item: Enables restaurant staff to add new menu items, specifying name, price, and type (vegetarian or non-vegetarian).
  • Add Ratings: Allows customers to provide ratings (1-5 stars) for menu items, which are stored and used for item popularity and quality assessment.
  • Exit: Saves any changes made to the menu and exits the program.

Features

  • Menu Management: Utilizes JSON for efficient storage and management of menu items, including name, price, and type.
  • Dynamic Interface: Provides a user-friendly interface for seamless interaction with menu items, ordering, and rating.
  • Rating System: Incorporates a feedback mechanism where customers can rate menu items, helping in understanding customer preferences and improving dish popularity.
  • Data Persistence: Updates and saves changes to the menu in a JSON file (menu.json) for persistent storage.

Contribution

I, Chitransh Jaiswal developed this Project Individually. I was responsible for all aspects of the project, including design, development, testing, and documentation. Contributions to improve the efficiency, readability, or functionality of the code are welcome. To contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/your-feature).
  3. Make your changes.
  4. Commit your changes (git commit -am 'Add some feature').
  5. Push to the branch (git push origin feature/your-feature).
  6. Create a new Pull Request.

Please ensure your contributions adhere to the coding standards and follow the existing style and structure.


Thank you for your interest in the Restaurant Management System!