The inspiration for my project came from the frustration of clicking on random spots in Google Maps, only to be presented with meaningless coordinates rather than any real context about the area. This lack of immediate, insightful information was especially noticeable while traveling or exploring unfamiliar neighborhoods during my exchange semester, which made me realize how disconnected existing map experiences can feel. Building on this need, I created MapSense—a Chrome extension that enhances Google Maps by providing instant, AI-powered insight for any spot the user clicks on. Instead of just latitude and longitude, the user is greeted with a comprehensive summary of the area within a 3km radius, including notable places, restaurants, optimal visit times, and personalized recommendations based on preferences set in advance.
To make this vision a reality, I combined a JavaScript/TypeScript frontend using Chrome Extension APIs with a Node.js backend that orchestrates calls to the Google Maps JavaScript API, Places API, and Foursquare Places API, leveraging GPT-4 to synthesize natural language descriptions. I chose Firebase for user data storage and intelligent caching, which helped mitigate API cost limits. Throughout development, several challenges arose: Google Maps' constantly evolving and obfuscated DOM made it difficult to inject features reliably, so I switched to listening directly to the API for a more robust solution. Managing multiple API calls while keeping the experience fast and responsive required efficient caching and batch requests, so that users always saw essential information immediately with secondary data arriving progressively. Ensuring privacy while delivering personalized recommendations led me to implement an implicit preferences engine that required minimal onboarding and kept all sensitive data local. I learned a tremendous amount about API orchestration, real-time data streaming, Chrome Extension development, and designing for privacy without sacrificing user experience. Most valuable was the lesson that technical innovation isn't just about what technology you use, but about combining existing tools creatively to truly improve people's lives, always keeping scope focused on core value before adding extra features.


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