|
โจ A Premium Food Ordering Web Experience โจ |
|
A sleek, fully-featured food ordering web app with Firebase backend, 4-step checkout, PDF receipts, custom toast notifications, and a premium UI โ built entirely with vanilla HTML, CSS, and JavaScript. Zero frameworks. Zero build tools. Pure golden code. ๐ |
Experience the app now ๐ royal-cravings-banglo.vercel.app
|
Add items, adjust quantities, real-time totals, slide-out removal Email/password + Google OAuth with session persistence Live search bar + category filter buttons (Burgers, Pizza, Chicken, Pasta, Snacks) Summary โ Delivery โ Payment โ Success wizard |
Branded order receipts via jsPDF โ download, email, or WhatsApp Branded popups with product images, progress bars, and 3 styles Custom blur-backed confirmation before deleting cart items Mobile-first design, works on all screen sizes |
| 1๏ธโฃ Browse Menu | โ | 2๏ธโฃ Add to Cart | โ | 3๏ธโฃ Checkout | โ | 4๏ธโฃ Pay | โ | 5๏ธโฃ Get Receipt ๐ |
| Layer | Technology | Purpose |
|---|---|---|
| Markup | HTML5 | Semantic page structure |
| Styling | CSS3 | Flexbox, Custom Properties, Animations |
| Logic | Vanilla JavaScript (ES6+) | Cart, Auth, Checkout, Payments |
| Backend | Firebase | Firestore DB + Firebase Authentication |
| Receipts | jsPDF 2.5.1 | Client-side PDF generation |
| Carousel | Swiper.js v12 | Customer reviews carousel |
| Icons | Font Awesome 6.7.2 | UI icons throughout the app |
๐ก No
package.json, nonode_modules, no build tools โ all libraries loaded via CDN.
|
|
|
Edit const FIREBASE_CONFIG = {
apiKey: "YOUR_API_KEY",
authDomain: "your-project.firebaseapp.com",
projectId: "your-project-id",
storageBucket: "your-project.appspot.com",
messagingSenderId: "your-sender-id",
appId: "your-app-id",
measurementId: "G-XXXXXXXXXX"
};Replace the placeholder key in const RAZORPAY_KEY = "rzp_test_XXXXXXXXXXXXXX";
|
# 1. Clone the repository
git clone https://github.com/ayushnandi718-dev/FOOD-WEBSITE.git
# 2. Navigate to the project
cd FOOD-WEBSITE
# 3. Start a local server
npx serve . # Node.js
# or
python -m http.server 8000 # Python
# or
# VS Code: Right-click index.html -> "Open with Live Server"To populate Firestore with the 8 menu items: // Open browser console on index.html and run:
seedProducts(); |
|
โฆ Production-style UI components โ cart, multi-step forms, modals, toasts, confirm dialogs โฆ Custom notification system โ branded toasts with progress bars, product images, and animations โฆ Application state management with vanilla JavaScript (no Redux, no Vue) โฆ Firebase integration โ Authentication, Firestore CRUD, graceful fallback โฆ Client-side PDF generation with jsPDF โฆ Responsive layouts using CSS Flexbox and Custom Properties โฆ Graceful degradation โ Firebase โ localStorage fallback pattern โฆ Modular code architecture without frameworks or build tools |
|
This project is licensed under the MIT License โ see the LICENSE file for details.
Copyright (c) 2026 rva.creates
|
Ayush Nandi โ Full Stack Developer |
|
This project demonstrates strong frontend fundamentals, ability to build real-world UI systems, clean modular code architecture, and focus on user experience and design. If you found this project helpful or impressive, give it a โญ on GitHub! |
โฆ ๐ โฆ Made with โค๏ธ by Ayush Nandi ๐ โฆ โฆ
