Inspiration

Dance is one of the most joyful and loved forms of physical activity, especially among women, where over 70% participate recreationally across all age groups.
But traditional dance classes don't work for everyone. They can feel overwhelming, intimidating, and inaccessible, especially for socially anxious learners, neurodivergent individuals, and elders who need a slower pace and personalized guidance (i.e. large dance classes lack individualized support especially for neurodiverse youth).

We built Choreo to change that.
To make dance practice safer, calmer, more welcoming, and a space where:

  • Socially anxious and neurodivergent individuals can build skill and confidence at their own rhythm.
  • Elders can maintain mobility and cognitive resilience, with studies showing that seniors who dance regularly experience a 76% reduction in dementia risk.
  • Women and youth can find a joyful, judgment-free way to move and express themselves.

Our mission is simple:
Make structured dance training accessible, measurable, and empowering for everyone, no matter their age, background, or experience. <3


What It Does

Choreo transforms your dance practice with real-time computer vision feedback, like having a dance coach gently guiding you from the screen.

It captures your movements through a webcam, compares them to a reference choreography, and gives you instant, easy-to-understand live feedback on how you're doing, helping you improve with every step.

After each session, Choreo generates a personalized post-dance analysis, using Gemini AI to summarize your progress with warmth, creativity, and encouragement, not cold robotic stats. It feels less like an app... and more like having your own personal dance buddy cheering you on :D

In user testing, Choreo helped dancers improve their accuracy by 56% after just one session, inspiring us to add more adaptive features like speed control to meet users where they are.


How We Built It

  • Frontend – React.js + Tailwind CSS
    We crafted a responsive, polished frontend using React and Tailwind CSS, complete with real-time video feeds, dynamic timelines, scroll snapping, and hover animations (+ celebratory confetti).

  • Backend – Flask (Python)
    A lightweight Flask server powers the real-time video feed, pose extraction, feedback generation, and all our API endpoints.

  • Computer Vision – OpenCV + MediaPipe

    • OpenCV captures and processes webcam frames at real-time speeds.
    • MediaPipe Pose extracts skeletal keypoints from each frame.
    • We calculate Euclidean L2 Norm distances between user and reference poses to measure match accuracy, dynamically adjusting thresholds for smarter feedback.
  • AI Feedback Generation – Gemini API
    We wanted the feedback in Choreo to feel like it was coming from a real person: encouraging, supportive, and easy to connect with. After talking to users during our testing, we realized how important it was to avoid robotic or clinical-sounding advice, especially for beginners who can feel overwhelmed easily. We fine-tuned our Gemini prompts to sound more like a friendly dance coach: keeping the tone modern, motivating, and relatable to help users stay confident while learning.

  • Dynamic Timeline Visualization
    Our custom timeline uses CSS scroll snapping and dynamic highlight animations to help users instantly find areas that need improvement, making review smooth, intuitive, and even fun.


Tech Stack

Layer Technology
Frontend React.js, Tailwind CSS, HTML5, JavaScript ES6+
Backend Flask (Python), Flask-CORS
Computer Vision OpenCV, MediaPipe
AI Models Gemini API (Large Language Model)
Video Handling Real-time OpenCV video capture, JPEG streaming
Hosting/Dev Local Flask server + React dev server
APIs RESTful APIs (video feed, frame save, feedback serving)

Challenges We Ran Into

  • Syncing Live Video to Reference Timelines
    Lags between the webcam and the reference video made feedback tricky, so we engineered second-to-frame mappings to keep things locked together.

  • Merging Across the Stack
    Balancing fast iteration across frontend, backend, and computer vision pipelines led to messy merge conflicts, which we solved with careful Git strategies and lots of real-time communication.


User Research and Validation

We wanted Choreo to truly help people, so we ran a user study with 12 participants, including beginners who experience social anxiety around dance and women who dance recreationally. Participants practiced choreography using Choreo, and we measured their accuracy before and after one session.

Results:

  • 56% average improvement in movement accuracy
  • Reported feeling more confident, less overwhelmed, and more motivated to keep practicing

Their feedback directly shaped our roadmap, pushing us to prioritize features like adding speed control and AI-powered mistake review to make learning even smoother and less intimidating.


Accomplishments We're Proud Of

  • Building a full-stack, real-time computer vision system from scratch including: live feedback, post-analysis, and dynamic timeline visualization.
  • Alyssa's first hackathon and first full-stack project!
  • Fiona, Alyssa, and Cindy's first time deploying OpenCV + Flask production code.
  • Selina deepened backend skills + deploying full stack computer vision!

What We Learned

  • Applying Computer Vision
    From keypoint extraction to dynamic pose comparison, we now understand what it takes to make CV work live, not just in theory.

  • Human-Centered AI Design
    Engineering Gemini prompts to feel warm and motivational taught us how even AI feedback can make (or break) a learning experience.

  • Focus, Focus, Focus
    Prioritizing what mattered most: smooth user experience, real-time feedback, clarity which let us ship a product that actually works.


What's Next for Choreo

More Adaptive Pace Control (Dynamic Tempo Adjustment):
We support 0.5x speed, but soon, you'll be able to dynamically adjust the choreography pace to match your comfort level.

Accessibility Enhancements:
Support alt-text for screen readers, high-contrast color modes, and accessible timeline design for users with visual or cognitive challenges.

Broader Healthcare Applications:
Expand Choreo into physical therapy, senior cognitive wellness, and neurodivergent motor coordination programs.


Final Mission

At the end of the day, we believe movement is a universal language.
And with Choreo, everyone deserves the chance to dance, learn, and thrive on their own terms <3!

Built With

Share this project:

Updates