Inspiration:

Vocalyze was inspired by a simple gap: people know speaking well is career-defining, but most tools for improving it are either passive, generic, or not built for consistent daily practice. We wanted to build a professional speaking gym—something that combines game-like progression loops, practical speaking scenarios (interviews, impromptu, persuasion), measurable performance states, and social pressure through real-time debate rooms. The goal was not “just another speaking app,” but a system that makes deliberate speaking practice repeatable and motivating.

What it does:

Vocalyze is a gamified speaking platform with two major systems:

1) Practice Paths (single-player progression)

Users choose a path:

  • Interview Arena
  • Think Fast
  • Persuade & Pitch

Each path is structured as a level ladder. Users must pass a level to unlock the next. Completing all levels marks the path as Mastered.

Progress state: $$ P_{\text{path}} = {\text{passed},\ \text{unlocked},\ \text{mastered}} $$

Unlock logic: $$ \text{unlock}_{k+1} = \begin{cases} 1 & \text{if } \text{score}_k \ge \tau_k \ 0 & \text{otherwise} \end{cases} $$

Bounded next-level unlock: $$ \text{unlocked} = \min(L_{\max},\ \text{passed} + 1) $$ Mastery condition: $$ \text{mastered}(\text{path}) = 1 $$

$$ \iff \forall k \in {1,\dots,L},\ \text{score}_k \ge \tau_k $$

2) Club (social debate mode)

Club supports room-based debate: create a room (single active room constraint), wait in lobby for another player, or play instantly with a friend nearby. Each room gets a random debate topic from a curated topic pool and launches debate context in live mode. Room representation: $$ R = {\text{id},\ \text{status},\ \text{topic},\ \text{capacity},\ \text{mode}} $$

How we built it:

(i) Frontend:

React Native + Expo Tab + stack navigation architecture

Custom gamified UI components for: path cards, node maps, progression surfaces, club lobby cards and controls.

(ii) Backend:

Node.js + Express + Mongoose debate/profile route scaffolding environment-based config Gemini service integration path for AI feedback expansion.

Logic architecture:

Path progression, unlocks, room state, and handoff were implemented as explicit state transitions so the UI and gameplay behavior stay deterministic and testable.

Challenges we ran into:

  • Rapid product iteration changed core IA repeatedly
  • We moved between auth/no-auth, altered entry flow, and refactored route structure mid-build.
  • Nested scroll contention in React Native
  • Parent/child scroll views conflicted in map interactions; we resolved gesture ownership and viewport constraints.
  • State consistency during fast UI rewrites
  • We had to keep progression truth consistent while redesigning visual systems.
  • Dependency drift after upstream pulls
  • New package requirements introduced runtime mismatch until versions were reconciled.

Accomplishments we’re proud of:

  • Implemented a complete level-gated path mastery system.
  • Built a functional single-room club lobby flow with random topic generation.
  • Reduced onboarding friction to:
  • Welcome → Focus selection → App
  • Achieved coherent design language while iterating fast.
  • Preserved production-minded modularity despite hackathon speed.

What we learned:

  • Learning loops beat feature volume: prompt → perform → feedback → unlock is the core retention engine.
  • State models must be explicit early to avoid progression edge-case bugs.
  • UX trust matters: real states > decorative fake metrics.
  • Navigation contracts are critical in fast-moving React Native builds.

What’s next for Vocalyze:

  • Progression System
  • Adaptive Difficulty
  • Team/Classroom based
+ 2 more
Share this project:

Updates