✨ Project Story – Sentira: The Emotionally Intelligent Ride Companion

🔥 Inspiration

During urban commutes, we often feel overwhelmed, stressed, or simply disconnected. Most micro-mobility apps focus only on efficiency — getting from Point A to B. But what if your commute understood how you felt and adapted your journey to support your mental and emotional well-being?

That’s where Sentira was born — a personal AI-powered ride companion that detects how you're feeling and turns your route into an emotionally attuned experience.

💡 What it does

Sentira uses AI to detect your mood through facial expression and voice tone analysis. It then:

  • Suggests personalized ride routes (calming, scenic, energetic, or exploratory)
  • Plays GPS-triggered, mood-matched audio stories
  • Allows community storytelling: drop or discover stories tied to places
  • Tracks your emotional shift from start to finish

⚙️ How we built it

  • Next.js (TypeScript) – Full-stack framework for building the app
  • Tailwind CSS + ShadCN UI – Clean, responsive, accessible UI
  • Genkit + Google Gemini API – Used for generating AI-powered location-based stories
  • Zod – Validates AI outputs for safe rendering
  • Mediapipe – Facial expression analysis for mood detection
  • Whisper API (Mocked) – Voice tone analysis (optional)
  • Mapbox – Renders personalized routes on the map
  • Firebase – Stores user-submitted stories and session logs

🧠 Challenges we ran into

  • Balancing mood detection accuracy vs user privacy
  • Ensuring real-time GPS-based storytelling without battery drain
  • Making Genkit outputs reliably structured and readable with Zod
  • Integrating multiple APIs without affecting app responsiveness

🚀 What's next

  • Integrate Spotify’s mood-based music suggestions
  • Enable live group ride experiences with shared mood
  • Add user profile with mood history visualizations
  • Expand local content partnerships for deeper storytelling

Built With

  • api`
  • css`
  • firebase`
  • gemini
  • genkit`
  • google
  • mapbox`
  • mediapipe`
  • next.js`
  • shadcn
  • tailwind
  • typescript`
  • ui`
  • whisper
  • zod`
Share this project:

Updates