What I Built with Google Gemini
"Sathi" means friend in Hindi — your travel friend finder.
At Hacknuthon 5.0, held at Nirma University, our team set out to solve a problem every solo traveler knows: you're visiting an incredible place, but you have no one to share it with. Dating apps mastered connecting people nearby. Why hasn't anyone done that for travelers?
That's how TripSathi was born — a Flutter app that works like Tinder, but for finding travel companions.
Here's what the app could do:
Discover nearby travelers in real time — see active travelers on a live map, making spontaneous meetups possible
Swipe-style matching — connect with people who share similar travel interests and destinations
Create or join travel groups — form groups for upcoming trips and let strangers join in
Share travel photo posts — a social feed of trip photos where others could opt to tag along next time
Real-time chat — message matches or communicate within group chats to plan meetups
Gemini powered four key features:
Profile bio generation — users answered a few questions and Gemini crafted a natural, engaging bio automatically
Smart traveler matching — Gemini analyzed interests, travel history, and location to surface compatible companions beyond simple proximity
In-app chat assistance — suggested conversation starters and helped plan meetups on the fly
Travel recommendations — based on location and profile, Gemini surfaced local experiences and hidden gems to explore with new connections
Demo
Right now I'm having only 1 screen which is the implementation of AI chatbot to recommend the places to visit near places as per the prompt passed to it
What I Learned
Technically, this hackathon pushed me hard. Integrating the Gemini API into Flutter while simultaneously building real-time chat (Firebase) and live location features in a 48-hour window was genuinely challenging. I learned to structure API calls efficiently and craft prompts that returned UI-ready responses cleanly.
State management under pressure was another big lesson — when building fast, messy state is your biggest enemy.
On the soft skills side, ruthless prioritization was everything. We had to make hard calls about what made the demo and what got cut. Letting go of a feature you're excited about, because the core experience matters more, is something no tutorial teaches.
The biggest unexpected lesson? Prompt engineering is a real skill. Early bio generation outputs were generic. Once we refined the prompt with tone, length, and personality context, the results became genuinely impressive.
Winning 3rd place validated that the idea resonated. That felt great.
Google Gemini Feedback
What worked really well:
Bio generation was the crowd favorite. Judges were surprised at how natural and personalized the outputs felt, and API response times were fast enough to feel seamless. The travel recommendations also stood out — Gemini understood location context well and gave suggestions that felt curated, not generic.
Where we hit friction:
The biggest challenge was structured output consistency. For matching, we needed Gemini to return specific JSON for the UI. Response format would subtly shift between calls mid-hackathon, breaking our parsing logic. A more reliable structured output mode would have saved significant debugging time.
Context length management in the chat assistant was also tricky — balancing enough conversation history to feel coherent without bloating token counts required careful engineering under time pressure.
The honest take:
Gemini is genuinely powerful. The output quality for natural language tasks is excellent. But better Flutter SDKs, clearer documentation, and more predictable structured outputs would make the developer experience significantly smoother.
That said, would I use Gemini again? Without hesitation. TripSathi wouldn't have been TripSathi without it.

Top comments (0)