This is a Restaurant Management System developed using Spring Boot, JTE templates, Spring Security, WebSockets, MySQL, and more. It helps manage restaurant orders, customer interactions, and administrative tasks with real-time updates.
- Spring Boot: Backend framework to handle REST APIs and business logic. 🖥️
- JTE Templates: A modern template engine for rendering dynamic HTML pages. 💻
- Spring Security: For managing authentication and authorization of users. 🔐
- WebSockets: For real-time communication between the frontend and backend (e.g., order updates, notifications). 💬
- MySQL: Database for storing orders, user details, menu items, etc. 🗃️
- Admin Panel: Allows restaurant admins to manage orders, add new dishes in the menu, view customer requests, and perform administrative tasks. 🧑💼
- Customer Ordering: Customers can browse the menu, place orders, and make payments. 🍽️
- Real-Time Updates: WebSockets provide real-time updates to admins about the status of customer orders. 🔄
- Security: The system uses Spring Security to protect the admin routes and provide user login functionality. 🛡️
- QR Code Ordering: Customers can scan a QR code to view the menu and place orders directly from their mobile device. 📱
- Java 17 or above ☕
- MySQL 8 or above 🗄️
- Maven or Gradle for dependency management 📦
The QR code below directs customers to the food ordering page, where they can view the menu and place orders.
-
Login Page: Provides login functionality for admin users. 🔑
URL: Login -
Order Dashboard: Admins can view active and completed orders. 📊
URL: Order Dashboard -
Admin Dashboard: Admins can add new dishes to the menu with dish images directly sotred in cloud. 📊
URL: Add Dish Dashboard -
For Demonstration:
- Sample Username: Keshav Sharma
- Sample Password: 04122004 🔑
To run the application locally, follow these steps:
-
Clone the repository:
https://github.com/Medhansh-32/Resturant-Management-System.git
-
Provide the your credentials like MySQL Data Source Url, username, password and client ID for imgur cloud in application.properties:
spring.datasource.url= spring.datasource.username= spring.datasource.password= client_id=
-
Build and run the application using Maven or Gradle:
./mvnw spring-boot:run
or
./gradlew bootRun
If you would like to contribute to this project, please fork the repository and submit a pull request. Make sure to include tests for any new features or bug fixes.
For any issues or feature requests, please create an issue in the GitHub repository. 🐛