Inspiration
A pronunciation score can tell someone that a sentence was unclear, but it rarely tells them what to practice next. We built Enunci to close that gap: speak in a real-feeling situation, find the sounds and words that need attention, practice them in a short focused session, and see whether clarity improves over time.
What it does
Enunci is an iOS-first speaking coach with 12 target-language options. A learner chooses a language and a speaking goal, then follows a personal practice path rather than a generic list of exercises.
- Conversation practice: Guided roleplays and open-ended conversation let learners rehearse everyday speaking. During a session, Enunci shows an interim transcript and speaking waveform. After a completed turn, it adds pronunciation evidence without holding up the dialogue. Learners can revisit a saved transcript and debrief, and continue a conversation after a session recap.
- A clear next step: Word of the Day, Phrase Clarity, flashcards, minimal-pair drills, and focused sound practice turn a weak word or pattern into something the learner can try again immediately. A daily repair plan brings the most useful tasks together.
- Progress with context: Progress Proof compares an early baseline with recent scored practice. When there are too few samples, it says so instead of claiming an improvement from one lucky attempt.
The feedback adapts to the target language. Enunci shows the pronunciation and fluency evidence available for that locale; detailed Azure prosody feedback is limited to supported English assessment. It does not present an unsupported score as fact.
How we built it
The iOS app uses Flutter, Riverpod, and Hive, with Firebase for identity and sync. Gemini Live powers the conversation. Azure Speech provides low-latency interim transcription and pronunciation assessment after a learner completes a turn. An authenticated Worker proxies the AI services so their private credentials are not shipped in the app.
RevenueCat manages Enunci Pro, the iOS paywall, monthly and annual subscriptions, entitlement checks, and Restore Purchases. The annual plan includes a seven-day free trial for eligible new subscribers; the monthly plan has no trial. Both plans unlock the same Pro experience, with App Store-localized pricing.
Challenges and what we learned
The main engineering challenge was making a live conversation feel responsive while keeping speech feedback trustworthy. The same microphone stream feeds the conversation and interim transcript; slower assessment runs after a committed turn rather than blocking the next reply. We also built reconnect and session-history handling, cached debriefs, and language-specific scoring gates. Raw roleplay audio is not stored in the session history.
Purchases brought a different challenge: a receipt and a signed-in account can update at different times. We keep entitlement state stable through that propagation window and support restoring a purchase. We learned that a useful speaking coach needs both fast interaction and honest limits on what the underlying speech services can measure.
What's next
We are launching on iOS first. We will use feedback from real learners to refine the repair recommendations, improve the conversation flow, and make practice easier to return to every day.
Log in or sign up for Devpost to join the conversation.