Food Fiesta is a premium, full-stack dining management system built to streamline restaurant operations. From inventory tracking to real-time order processing, it provides a robust platform for both administrators and customers.
- 🛡️ Secure Authentication: Multi-layered security with role-based access control (Admin/User).
- 📦 Inventory Management: Full CRUD operations with categorized items (Biryani, North Indian, Chinese, etc.).
- 🥘 Diverse Catalog: Support for multiple cuisines including Tandoori, Paneer delicacies, and Desserts.
- 🛒 Order Lifecycle: Seamless order placement, tracking, and history management.
- 📄 API Documentation: Interactive Swagger/OpenAPI documentation for all system endpoints.
- 🎨 Dynamic UI: Sleek, responsive interface with image-rich menus.
- 📊 Admin Dashboard: Comprehensive overview of users, products, and total orders.
| Layer | Technology |
|---|---|
| Backend | Java 21, Spring Boot 3.4.2, Spring Security, Hibernate |
| Database | PostgreSQL |
| Documentation | SpringDoc OpenAPI (Swagger) |
| Frontend | Thymeleaf, Vanilla CSS, JS |
| Build Tool | Maven |
For a scalable enterprise-grade application, we recommend the following structure:
src/main/java/com/example/demo/
├── 📁 common/ # Shared constants, enums, Utility classes
├── 📁 config/ # Security, OpenAPI, and App configurations
├── 📁 controllers/ # REST and MVC Controllers
├── 📁 dto/ # Data Transfer Objects (Request/Response)
├── 📁 entities/ # Database Models (JPA Entities)
├── 📁 exceptions/ # Global Exception handling logic
├── 📁 repository/ # Data Access Layer (Spring Data JPA)
├── 📁 security/ # JWT, UserDetails, and Filter logic
└── 📁 services/ # Business Logic Layer
└── 📁 impl/ # Service Implementations- 💳 Payment Gateway: Integrate Stripe or Razorpay for online transactions.
- 🔑 JWT Authentication: Transition to stateless JWT for mobile-app readiness.
- 📸 Image Storage: AWS S3 integration for hosting high-quality food images.
- 🔔 Real-time Alerts: WebSocket integration for instant order status notifications.
- 📈 Analytics Suite: Visualized sales reports using Chart.js or D3.js.
- 📧 Notification Service: Automated email invoices and promotional newsletters.
- Home (
Home.html): Landing page with promotional banners and featured items. - Menu/Products (
Products.html): Interactive catalog organized by categories:- 🍛 Biryani: Hyderabadi, Lucknowi, and Kolkata specialties.
- 🍗 Chicken & Tandoori: Matka Chicken, Tikka, and Butter Chicken.
- 🍜 Chinese: Chowmein, Manchurian, and Momos.
- 🧀 Paneer Delights: Shahi Paneer, Kadai Paneer, and Matar Paneer.
- 🥗 Vegetables & North Indian: Soya Chaap, Chola Bhatura, and more.
- Location (
Locate_us.html): Google Maps integration and restaurant address details. - About (
About.html): Restaurant story, team, and mission.
- Registration (
register.html): Account creation for new customers. - Login (
Login.html): Secure entry for users and administrators. - Ordering (
BuyProduct.html): Selection and quantity management for orders. - Success (
Order_success.html): Order confirmation and summary.
- Management Center (
Admin_Page.html): Central hub for monitoring users, stock, and orders. - Entities CRUD:
Add_Product.html/Update_Product.htmlAdd_User.html/Update_User.htmlAdd_Admin.html/Update_Admin.html
- Navigation (
Navigation.html): Universal header with dynamic links based on user role. - Error Handling (
exception.html): Custom design for handling and displaying system exceptions.
- JDK 21+
- PostgreSQL
- Maven 3.8+
- Clone the Repo
git clone https://github.com/yourusername/food-fiesta.git
- Configure Database
Update
src/main/resources/application.propertieswith your PostgreSQL credentials:spring.datasource.url=jdbc:postgresql://localhost:5432/foodfiesta spring.datasource.username=your_username spring.datasource.password=your_password
- Build & Run
mvn clean install mvn spring-boot:run
- Access UI
- Home:
http://localhost:8080/ - Swagger Docs:
http://localhost:8080/swagger-ui/index.html
- Home:
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git origin push feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Developed with ❤️ in 2026 by the Food Fiesta Team
















