Inspiration

Generic meditation and wellness apps often feel static and impersonal. We listen to the same pre-recorded voices repeating the same scripts, regardless of what we are actually going through in that exact moment.

With recent breakthroughs in Generative AI, especially natural, emotionally nuanced, human-like speech synthesis—I realized audio talks could be personal, adaptive, and intimately close to the listener.

I envisioned Orbora: a mindfulness companion that creates bespoke guided meditations, breathwork, ASMR, and wisdom monologues on demand. To anchor this experience visually, I created the Orb an omnipresent living visual companion whose breath, color glow, and orbiting rings reflect your emotions, topics, and duration, creating a sense of calm and presence across the entire app.


What It Does

Orbora lets users generate personalized audio talks in seconds:

  • Two Generation Paths: A peaceful Guided Flow (step-by-step questions where you hold the glowing Orb to generate) or a Quick Form for instant generation.
  • AI Audio Engine: Gemini writes the script tailored to your context and intent, and Gemini TTS voices it with expressive, human-quality audio.
  • Dual Library: A Wellness Journey featuring structured, progressive paths (Breath, ASMR, Wisdom, Meditation) with unlockable milestones, alongside a Personal Journey diary of all your generated sessions.
  • Offline-First Playback: Talks and audio are cached locally with resume-playback position memory, 10s seek controls, an expandable full-screen player, and an adaptive docked mini-player.
  • Fair & Sustainable Monetization: Powered by RevenueCat, featuring virtual currency (TCR Talk Credits) and the AuraOrb Pro subscription.

How I Built It

  • Kotlin Multiplatform (KMP) & Compose Multiplatform: A single shared codebase powers Android, iOS, and Wasm verification targets with strict Clean Architecture and MVVM.
  • Native Audio Engines: Leveraged platform-native audio players (Media3 / ExoPlayer on Android and native media frameworks on iOS) with lock-screen controls and background audio playback.
  • Backend on Google Cloud Run & Ktor: A lightweight, high-performance Ktor backend coordinating Vertex AI Gemini, Gemini TTS, Cloud Firestore, and Google Cloud Storage.
  • Flexible In-App Purchases: Integrated subscriptions and consumable credit packs through RevenueCat, paired with custom credit calculation and server-side webhook reconciliation.
  • Local Persistence: Room 3 KMP with bundled SQLite driver for structured data and DataStore for persistent preferences.

Challenges I Ran Into

As a solo developer, building and shipping this for the Ship-a-ton pushed me into unfamiliar territory:

  1. First-Time iOS Development: This was my first time releasing an iOS app. Bridging background audio playback, system interruptions, lock-screen media controls, and platform lifecycles with the shared multiplatform architecture was a steep learning curve.
  2. First-Time Subscription & In-App Purchases: Navigating store configurations for the first time required careful design. I had to cleanly separate sandbox testing from live production environments so internal testing could run smoothly without storefront rejections.
  3. Protecting the Backend & Managing AI Costs: Generative AI audio has real compute costs. To make sure the app remains financially sustainable without losing money on generation, I:
    • Designed a clear unit-cost rule: ( \text{Cost} = 1 \text{ credit per started 30 seconds} ).
    • Secured backend endpoints with cryptographic token verification and App Check.
    • Added weekly usage caps and SHA-256 email fingerprinting to prevent alias abuse on free credits.
    • Set up automated webhook listeners to instantly reconcile credits on refunds or cancellations.
  4. Handling Background App Exits During Generation: Since generating audio can take a little time, users might start a talk and switch apps. I had to ensure the backend generation and queue state kept running reliably without losing progress or charging the user twice.
  5. Balancing Onboarding: I wanted an onboarding tour that clearly taught the Orb mechanics and navigation without feeling heavy or getting in the way of listening.
  6. Focusing on the MVP: It was tempting to get lost in minor details or secondary features. Strictly prioritizing what mattered most was essential to shipping a rock-solid product on time.
  7. GDPR & Privacy Compliance: Built full account deletion that cascades across databases and cloud audio storage, backed by transparent privacy policies and data protection standards.

Accomplishments That I'm Proud Of

  • Shipping to Both Stores: Taking an idea from zero to a live, production-grade app submitted to both Google Play (176+ countries) and the Apple App Store in time for the deadline.
  • The Living Orb Companion: Crafting a custom-rendered visual identity that feels alive—breathing, glowing, and rotating in harmony with the session's emotional tone and length.
  • Sustainable Multiplatform Monetization: Bringing a smooth subscription and virtual currency experience to life across both mobile platforms.

What I Learned

  • How to architect and deliver a production-grade Kotlin Multiplatform app spanning Android and iOS.
  • The intricacies of mobile monetization, store sandboxes, paywall flows, and webhook validation.
  • How to model generative AI economics sustainably within consumer mobile apps.
  • The discipline of cutting non-essential scope to deliver a cohesive MVP.

What's Next for Orbora

  • Quick Anxiety Relief: A dedicated, one-tap instant grounding session for moments of acute stress or panic.
  • Post-Session Conversations: An interactive, conversational reflection where you can talk with the companion about what was said, how you felt, and what you took away from the session.
  • Multilingual Audio Generation: Expanding voice synthesis so users can generate personalized talks in multiple languages.
  • Smart Completion Notifications: Background push alerts notifying listeners the moment their custom talk is ready.
  • Curated Breathing Path: Releasing the dedicated 10-step breathwork journey with newly mastered audio.

Built With

Share this project:

Updates

Submission history