Welcome to the Restaurant Management System project! This system is designed to help restaurant owners manage their orders and menu items efficiently. Whether you run a small café or a large restaurant, this system can simplify your daily operations.
- User Authentication: Secure user registration and login using bcrypt for password hashing and JWT (JSON Web Tokens) for authentication.
- Responsive Design: A responsive web application built using React and Tailwind CSS, ensuring a seamless experience on various devices.
- Menu Management: Categorize and manage restaurant menu items easily.
- Order Management: Users can view their orders and add items to their cart.
- API Testing: Utilizes Thunder Client for verifying API endpoints.
- Login: Users can log in to their accounts.
- Signup: New users can create an account.
- My Orders: Users can view their order history.
- Add to Cart: Allows users to add items to their cart.
- Main Screen: Displays categories of menu items.
The project uses MongoDB Atlas to store data. There are two main collections:
- Category Data: Contains information about available categories (e.g., starters, pizza, rice).
- Items Data: Contains information about the available items related to categories.
The project's API endpoints include:
/api/signup
: Allows new users to register and stores their information securely in the database./api/login
: Provides secure login functionality with authentication tokens./api/categories
: Fetches and manages category data./api/items
: Handles menu item data./api/orders
: Manages user orders.
- Clone the repository:
git clone https://github.com/yourusername/restaurant-management-system.git
- Change directory to the project folder:
cd restaurant-management-system
- Install the required dependencies: