Restaurant Finder: AI-Powered Dining for Everyone
Inspiration
The idea for Restaurant Finder came from my own experiences and observations of how challenging it can be for people with dietary restrictions to find suitable restaurants. Many existing tools don’t cater specifically to individual dietary needs, and Google’s AI models presented an opportunity to address this gap creatively. This project aims to simplify dining decisions by combining AI and Google Maps 3D in an engaging way.
What I Learned
Google AI and Gemini Models: I explored Google’s Gemini Nano AI to generate relevant restaurant recommendations, learning how to leverage Prompt APIs effectively. Google Maps 3D API: Integrating 3D map functionality was a key learning experience. I discovered how to animate cameras and markers to create dynamic map interactions. Design with Material Design: Adopting Google’s Material Design principles helped me understand how good design enhances usability and user experience. API Integration Challenges: Implementing Google Places API and handling structured data like restaurant details, photos, and reviews taught me how to manage complex API responses.
Accomplishments I’m Proud Of
Successfully Combining AI and Maps: I managed to integrate Google’s Gemini AI with Google Maps 3D, creating a seamless user experience that bridges recommendation systems with interactive visual maps. Dynamic and Immersive User Experience: The fly-camera animations and InfoWindow displays create an engaging way to explore restaurant options in real-time. Learning New Technologies: I pushed myself to learn and implement Google APIs, Angular Material, and advanced animations in a short timeframe, which has been both challenging and rewarding. Solving Real Problems: This project provides a foundation for a solution that could help individuals with dietary restrictions find suitable dining options, a task that can be particularly challenging in urban areas.
How I Built It
Backend:
Built using Node.js and Express. Integrated Google’s Gemini AI for dietary restriction-based recommendations. Used Google Places API to fetch restaurant details like location, photos, opening hours, and websites. Frontend:
Developed with Angular to create a responsive, single-page application. Google Maps 3D API was used to display a dynamic map with fly-to-camera animations and InfoWindow for restaurant details. Styled using Angular Material for a polished, user-friendly interface. Core Features:
Users can select a dietary restriction on the landing page. Restaurants matching the restriction are dynamically fetched and displayed on the map. Fly-to animations take the user to each restaurant's location, with detailed information displayed in a modal or an InfoWindow. Hosting:
The project was deployed on GitHub with CI/CD pipelines, ensuring streamlined development and hosting.
Challenges I Faced
Data Accuracy: Google’s AI models currently do not provide built-in functionality for personalized dietary restrictions, so I had to design effective prompts and use data intelligently. Dense Locations: Animating the map in crowded urban areas made it challenging to maintain clarity and focus on specific restaurants. Image Rendering: Integrating photos dynamically required debugging API responses, as the Google Places API often returned arrays of photo references instead of direct URLs. Time Constraints: Balancing between feature implementation, design, and testing was challenging within the hackathon’s timeline.
Future Improvements
Advanced Personalization: Develop a more sophisticated system for filtering restaurants by dietary needs, potentially combining Google AI with user-defined preferences. Immersive Animations: Enhance map animations to zoom directly into restaurant entrances or visually significant locations for a better user experience. Error Handling: Improve fallbacks for missing data, like displaying meaningful placeholders when photos or addresses are unavailable. Enhanced Accessibility: Expand the platform to support mobile devices and Chrome Extensions for greater accessibility.
What’s Next
This project is just the beginning. I envision further integrating user feedback to improve restaurant recommendations, making the platform smarter and more inclusive. I also plan to explore partnerships with restaurants to offer exclusive deals or dietary-specific menus. The ultimate goal is to turn this application into a reliable assistant for anyone with specific dietary needs, expanding its reach globally and across various use cases.



Log in or sign up for Devpost to join the conversation.