Inspiration
Too often, people waste time trying to decide where to go—whether it’s for a quick lunch, a weekend café, or a tourist attraction abroad. The indecisiveness only grows when you’re in a new city, short on time, or just looking for something spontaneous.
We wanted to solve this problem with a smart yet simple tool that combines filters, maps, and a little bit of randomness. Inspired by conversations with friends and everyday decision fatigue, Decide A Place was born.
What it does
Decide A Place is a web app that helps users discover nearby or destination-based places—food, cafes, bars, shops, parks, and attractions. Users can:
- Set their location
- Filter results by keyword, price, or rating
- Sort by distance, price, or rating
- Choose how many places to view (10–60)
- Or tap “Decide for Me” for a random pick
Each result includes Google Maps info—distance, rating, reviews—and opens directly in Google Maps for directions and more.
The UI is responsive and supports light/dark modes. It also uses the Web Share API for quick sharing with friends.
How we built it
- Frontend: Built with React + TypeScript, powered by Vite for fast builds and modern development
- Mapping: Google Maps Platform — Places API (Text Search, Details), Google Maps JavaScript API
- Hosting: Static site deployed on Netlify
- Browser APIs: Geolocation API for current location, Web Share API for sharing suggestions
- Design: Responsive UI with Tailwind CSS, supporting both desktop and mobile, plus dark/light theme toggle
Challenges we ran into
- Quota limitations on Google Maps APIs during testing
- Tuning the “Decide for Me” function to ensure fair randomness with relevant places
- Keeping the UI clean while offering meaningful filters
Accomplishments that we're proud of
- Created a fully functional and responsive app that solves a real-world problem
- Delivered a clean UX with relevant filters and randomness
- Integrated seamlessly with Google Maps
What we learned
- Deep understanding of Google Maps Platform APIs and how to chain them effectively
- Learned how to manage state and filters effectively to maintain performance while providing rich user customization.
What's next for Decide A Place
Expanded Categories & Local Deals: Add more categories (e.g., gyms, theaters, coworking spaces) and integrate local promotions or discounts for users.
Analytics & Feedback Loop: Integrate usage analytics and user feedback mechanisms to continually refine features and UI/UX.
Monetization Opportunities: Explore partnerships with local businesses for sponsored listings, deals, or ads that align with user interests without compromising UX.
**Explore or let us decide for you!**
Built With
- google-maps
- javascript
- netlify
- react
- tailwind
- typescript
- vite
Log in or sign up for Devpost to join the conversation.