Ethni-CITY: The New Travel App

Ethni-CITY: The New Travel App

โ—5
calendar_today โ€ข schedule2 min read
โ€” Originally published at dev.to

If you're chronically online like I am, you're used to seeing tons of reels of people who travel to all these "authentic" destinations: Sao paulo, Marrakech, Cairo, Bangkok, and Bali. On Instagram or TikTok, it's pretty common to accompany your posts with a soundtrack, and it's the norm to post the latest trending songs to garner likes and reposts.
No shame here.
We all want validation, but so do the local economies we're coming from, and they hardly benefit when our money goes to international hotel chains and global brands. However, there are a few ways we can support locals while still making sure your pics eat, and one of them is by supporting local artists.
With Ethni-CITY, we connect your pics to the local artists of the countries you visit to curate a niche storyboard that puts artists' songs on your posts, helping them monetize their craft, gain recognition, and in turn boost their micro-economy as your pics garner likes.

To build this, I weaved spatial data with cultural analysis.

  1. Using Gemini 3.1 pro preview as the main model, the app performs a deep multimodal analysis of your uploaded photos and then identifies the city and country the picture was taken in by looking for landmarks, cultural motifs, textile patterns and lighting conditions to determine.

  2. I used Cesium JS along with Google Cloud photorealistic tiles, the agent transports you to the location of the photo, helping to tell a centric story.

  3. To ensure the app survives the "Hackathon Hug," I implemented a hierarchical fallback logic:

    • Tier 1: gemini-3.1-pro-preview for high-fidelity creative direction.
    • Tier 2: gemini-2.0-flash for high-speed fallback.
    • Tier 3: gemini-1.5-flash-8b for emergency quota resilience.

CHALLENGES FIXED:

  • By integrating a heavyweight library like Cesium into NextJS App router environment, posed significant challenges with asset serving and Typescript definitions. I had to automate the movement of Cesium's build assets into the public directory during the pre-build phase to ensure the tiles are rendered correctly in production.

I'm grateful for Gemini for providing the tools to curate this experience and help promote local artists from around the world.

Explore the project on GitHub:[ https://github.com/david-ac1/Ethni-CITY]
Watch the demo:[ https://youtu.be/kdrUzPtRw9Y?si=EzWt6DvbdbLjOk4V]

#GeminiLiveAgentChallenge #GoogleAI #GoogleCloud #Gemini

๐Ÿ”ฅ Join developers growing publicly
Share your knowledge, build in public, and grow your developer presence with a global community.

More Posts

The Sovereign Vault โ€” A Comprehensive Guide to Protocol-Driven AI

Ken W. Algerverified - Jun 4

Prompt Grounding in a Stateless World

Pocket Portfolio - Apr 22

Frameworks Are Institutional Memory

Ken W. Algerverified - Sep 17

Iโ€™m a Senior Dev and Iโ€™ve Forgotten How to Think Without a Prompt

Karol Modelski - Mar 19

Your AI Doesn't Just Write Tests. It Runs Them Too.

Kevin Martinez - May 12
chevron_left
131 Points โ€ข 5 Badges
1Posts
0Comments
Web Development | HealthCare | Education
Social and Human Rights
Avid StoryTeller

Related Jobs

View all jobs โ†’

Commenters (This Week)

1 comment
1 comment
1 comment

Contribute meaningful comments to climb the leaderboard and earn badges!