https://github.com/kevinthulnith/restaurant-website
Full Stack Restaurant Website (php, SQL, JavaScript, css, html, Composer)
https://github.com/kevinthulnith/restaurant-website
css emailvalidation full-stack-web-development html https javascript learn-php php restuarant resturent-website searchbar session-security sql sql-server web-security website websites
Last synced: 6 months ago
JSON representation
Full Stack Restaurant Website (php, SQL, JavaScript, css, html, Composer)
- Host: GitHub
- URL: https://github.com/kevinthulnith/restaurant-website
- Owner: kevinThulnith
- Created: 2024-11-02T16:42:57.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-03-10T12:47:44.000Z (7 months ago)
- Last Synced: 2025-03-29T17:22:26.514Z (7 months ago)
- Topics: css, emailvalidation, full-stack-web-development, html, https, javascript, learn-php, php, restuarant, resturent-website, searchbar, session-security, sql, sql-server, web-security, website, websites
- Language: CSS
- Homepage:
- Size: 13.9 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README




# π½οΈ The Gallery CafΓ© - Web Application
A fully functional, feature-rich restaurant website built using PHP, MySQL, JavaScript, HTML5, and CSS3. Designed for a seamless online experience, this web application provides an interactive way for customers to browse the menu, place orders, and reserve tables while also offering robust management functionalities for restaurant staff and administrators. hosted on Link .
## π Project Overview
The Gallery CafΓ© Web Application is a modern, secure, and efficient platform that enhances restaurant operations by integrating user-friendly features. Whether youβre a customer looking to enjoy a meal, an employee managing orders, or an admin overseeing operations, this platform has got you covered!
## π Features & Functionalities
### π₯ User Authentication
- Secure Login & Signup
- Password Reset with OTP Verification
- Session Security & Auto Logout Mechanism
- User Role Management (Customers, Employees, Admins)### π Order & Cart Management
- Add, Remove, and Modify Items in Cart
- Seamless Order Placement & Tracking### π Reservation System
- Book and Manage Table Reservations
- Instant Confirmation & Notification System### π Menu Management
- Browse & Search Menu Items with Categories
- Admins & Employees Can Add, Edit, or Remove Items### βοΈ Admin & Employee Dashboard
- View and Manage Orders & Reservations
- Track Customer Activity and Generate Reports
- User & Access Management
- Secure Data Storage with MySQL Database### π Security Features
- Access Control: Different user roles with restricted access
- CSRF Protection: Secure form submissions
- Session Management: Automatic session expiration & regeneration
- SSL Encryption: Enforce HTTPS connections for secure communication
- Security Headers: Protection against various web vulnerabilities## βοΈ Utility and Security Features under the hood
- **Access Control**: Different user roles have restricted access to specific pages.
- **Cross-Site Request Forgery (CSRF) Protection**: Enhanced form security.
- **HTTPS Enforcement**: All traffic is redirected to HTTPS for secure communication.
- **Security Headers**:
- `X-Content-Type-Options: nosniff`: Prevents browsers from interpreting files as a different MIME type.
- `X-Frame-Options: DENY`: Prevents the page from being embedded in an iframe.
- **Session Security**:
- Secure session settings (HTTP-only cookies, secure cookies over HTTPS).
- Session regeneration every 30 minutes to mitigate session fixation.
- Session data validation on each request to prevent session hijacking (IP address and user agent checks).
- Automatic session destruction if mismatched session data is detected.
- **CSRF Tokens**: Forms are secured with CSRF tokens.
- **Secure Logout**: Proper session termination.
- **Error Handling**: Robust error management for a smoother user experience.
- **SSL Certificate**: Ensure a secure connection.## User types and Functions
### π·οΈ Admin Functions
- **User Management**:
- Add new users (customers, admins, staff)
- Manage existing users (employees and customers)
- **Menu Management**:
- Add, update, and delete menu items
- Manage menu item categories
- **Order Management**: Oversee both online and in-shop orders.
- **Reservations Management**: Manage customer reservations.
- **Restaurant Management**:
- Manage tables and their types
- View order and reservation details### π·οΈ Employee Functions
- **Menu Management**: Update and manage menu items.
- **Order Management**: Oversee online and in-shop orders.
- **Reservations Management**: Handle customer reservations.
- **Restaurant Management**: Manage restaurant tables.
- **View Information**: Access order and reservation details.### π·οΈ Customer Functions
- **Ordering**: Place and manage online orders.
- **Reservations**: Book and manage restaurant reservations.
- **Menu Browsing**: View available menu items.## ποΈ Installation & Setup
Follow these steps to set up the project on your local server:
1. Clone the repository:
```bash
git clone https://github.com/KevinThulnith/Restaurant-Website.git
```2. Install Dependencies
Install PHPMailer with Composer
```bash
composer require phpmailer/phpmailer
```3. Configure SSL Certificates (For Local Development)
View and manage installed SSL certificates on your local server:
```bash
certmgr.msc
```Generate an SSL Certificate using this guide: π YouTube tutorial
4. Autoload PHPMailer in Your Code
Import PHPMailer to enable email functionalities:
```bash
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;require '../vendor/autoload.php';
require '../vendor/autoload.php';
```## π Why Choose This Project?
- β Easy to Use - Intuitive UI/UX for a smooth customer experience.
- β Secure & Scalable - Built with security best practices and scalable architecture.
- β All-in-One Solution - Manages orders, reservations, user roles, and more!
- β Developer-Friendly - Clean code structure with comments and modular components.## π‘ Future Enhancements
We plan to introduce more exciting features in upcoming updates, including:
- Live Order Tracking π΅
- AI-Powered Menu Recommendations π€
- Loyalty Rewards System π
- Integration with Payment Gateways π³## π Contributing
We welcome contributions from the community! Feel free to submit pull requests or report issues to improve the project.
## π¬ Connect with Us
For any questions or suggestions, reach out via issues or discussions in the repository.
---
Made with β€οΈ by Kevin Thulnith