Officially participating in Nexus Spring of Code 2026
<img src="(image.png)>
Foodie is a sleek, responsive food delivery web app built using HTML5, CSS, and JavaScript. Designed for performance, accessibility, and user delight — it offers an effortless browsing and ordering experience across all devices.
⭐ Don’t forget to Star the repo if you like it — it helps others discover this project!
| Technology | Description |
|---|---|
| HTML5 | Semantic and accessible markup |
| CSS3 | Responsive styling and layout |
| JavaScript (ES6) | Dynamic UI and client-side interactivity |
| Deployment | Hosted on GitHub Pages for free, fast delivery |
✅ Favorite Recipes — Bookmark your favorite recipes effortlessly with the ⭐ button. Browse them all in your tailored "My Favorites" page. Saved securely using localStorage.
✅ Fully Responsive — Works seamlessly on mobile, tablet, and desktop. 💡 Modern UI/UX — Minimalist design with smooth animations and intuitive navigation. 🛒 Smart Cart System — Add, edit, or remove items with instant price updates. ⏱️ Real-Time Tracking — Get live order status and estimated delivery time. 🔒 Secure Checkout — Integrated payment simulation with form validation. 🧩 Reusable Components — Modular, maintainable, and scalable architecture.
Foodie/
├── html/ # Main HTML files (entry points)
│ ├── index.html
│ └── other-pages.html
│
├── css/ # Styles
│ ├── base/
│ ├── components/
│ └── layouts/
│
├── js/ # JavaScript code
│ ├── components/
│ ├── services/ # API / external data calls (if any)
│ └── utils/
│
├── imgs/ # Images / icons / assets
│ ├── food/
│ └── ui/
│
├── locales/ # Translations / i18n (if used)
│ └── en.json
│
├── docs/ # Documentation folder
│ └── architecture.md
│
├── tests/ # Tests (if added later)
│ ├── unit/
│ └── integration/
│
├── .vscode/ # Editor configs
├── .gitignore
├── README.md
├── TODO.md
├── products.json # Data file (already present)
└── LICENSE
Follow these steps to run Foodie locally on your system 👇
git clone https://github.com/janavipandole/Foodie.gitcd FoodieSimply open the html/index.html file in your browser:
# Windows (PowerShell or CMD)
start "" html\index.html
# macOS
open html/index.html
# Linux
xdg-open html/index.htmlOr, use Live Server in VS Code:
- In VS Code, right‑click
html/index.html→ “Open with Live Server”
Load the extension for local testing:
- Open
chrome://extensions - Toggle “Developer mode”
- Click “Load unpacked” and select the
chrome extension/folder
To enable Google Analytics tracking on your Foodie website, follow these steps 👇
- 1️⃣ Get Your Measurement ID
- Go to Google Analytics → Admin → Data Streams → Web
- Copy your Measurement ID (looks like G-XXXXXXXXXX)
- 2️⃣ Add Tracking Script
Insert the following script inside the section of your main HTML file (e.g., html/index.html):
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX');
</script>- NOTE:- 💡 Replace G-XXXXXXXXXX with your actual Measurement ID.
- 3️⃣ Verify Tracking
- Visit your website and interact with it
- Open Google Analytics → Realtime → View Stream ID
- You should see your visit appear within seconds 🎯
The homepage now supports live nearby restaurant discovery using:
- Google Maps JavaScript API
- Google Places API
In Google Cloud Console, enable both APIs for your project:
- Maps JavaScript API
- Places API
Create a browser API key and add referrer restrictions for your domain(s).
Use either option below:
- Option A: Add this script before
../js/nearby-restaurants-home.jsinhtml/index.html
<script>
window.FOODIE_CONFIG = {
googleMapsApiKey: "YOUR_GOOGLE_MAPS_API_KEY"
};
</script>- Option B: Set it in browser localStorage (good for local testing)
localStorage.setItem("foodie_google_maps_api_key", "YOUR_GOOGLE_MAPS_API_KEY");- Open the homepage (
html/index.html) - Allow location permission when prompted
- You should see:
- Nearby top-rated restaurant markers on map
- Ranked list with name, rating, distance, and open/closed status
This site’s entry file is at html/index.html. To use GitHub Pages:
- Option A: Move
html/index.html(and assets) to the repo root so the root hasindex.html. - Option B: Create a root
index.htmlthat redirects to/html/. - Option C: Use Pages “/docs” and move
html→docs.
- Push your project to GitHub
- Open the repository settings
- Navigate to Pages
- Select the desired branch
- Save the settings
- Your site will be published automatically
This project uses Jest for unit testing JavaScript modules.
To run all tests:
npm testTo see detailed output for each test (test names and results), run:
npm test -- --verboseThis will show the name and result of every test, making it easier to debug and understand the test coverage.
Test files are located in the tests/ directory. You can add more tests for other modules as needed.
We ❤️ open-source contributions! Whether it’s bug fixes, new features, or improving documentation — every contribution counts! 🌍
-
Fork this repository Click the Fork button on the top right corner of this page.
-
Clone your forked repo
git clone https://github.com/<your-username>/Foodie.git
-
Create a new branch
git checkout -b feature/your-feature-name
-
Make your changes Add your improvements or fix bugs.
-
Commit your changes
git add . git commit -m "Added: new feature or improvement"
-
Push to your branch
git push origin feature/your-feature-name
-
Create a Pull Request Go to your fork on GitHub and click “Compare & pull request”. 🎉 That’s it! Wait for review and merge.
📘 For more details, see the CONTRIBUTING.md file.
Some potential enhancements for Foodie include:
- User authentication and login system
- Wishlist and favorite items feature
- Backend integration for real orders
- Dark mode support
- Search and filter functionality
- Multi-language support
- Payment gateway integration
We are excited to announce that this project has been officially selected for Nexus Spring of Code 2026 (NSoC '26).
As a Project Kernel, this project will be actively maintained and scaled during the program with support from contributors and the open-source community.
- Officially selected for NSoC 2026
- Contributor phase starts from 15 April
- Open-source mentorship and collaboration
- Active issue tracking and contributor support
We welcome contributors to participate and improve this project. Explore Program: https://www.nsoc.in/projects
This project is excited to be a part of Winter Of Code Social 2025! Contribute awesome pull requests, learn new technologies, and become a part of the open-source community. Whether you’re a beginner or a pro, this is your chance to grow and collaborate with developers around the world. 👉 Register here: woc.codesocial.tech
This project proudly participates in Hacktoberfest 2025! Contribute meaningful PRs, learn new skills, and help the open-source community thrive. 👉 Register here: hacktoberfest.com
⚠️ Only quality pull requests will be accepted (avoid spam or irrelevant PRs).
This project is licensed under the MIT License. See the LICENSE file for full details.
👩💻 Maintainer: @janavipandole 📧 Contact: Open an issue or connect via GitHub.
If you found this helpful: ⭐ Star the repository 🍴 Fork it to contribute 📢 Share it with others
“Good food brings people together — so does open source.” 🍕💻


