Chordially

Inspiration
Chordially is a play on the words "cordially" meaning warm/friendly and "chord". We strive to create a friendly and welcoming environment to learn guitar chords in.
Learning music can be intimidating and expensive. Private lessons cost $50-100 per hour, and many aspiring musicians give up before they even start. We wanted to democratize music education by creating an AI-powered tutor that provides personalized, real-time feedback at a fraction of the cost. Our goal was to make quality music instruction accessible to anyone with a smartphone or computer, removing financial and geographical barriers to learning an instrument.
What it does
Chordially is an intelligent music learning companion that uses computer vision to track your fingers on the guitar frets and provides instant feedback. The app:
- Tracks finger positions on the guitar fretboard in real-time using Python and ArUco markers
- Maps strings and 12 frets using a mathematical fret-spacing model for precise coordinate tracking
- Provides live visual feedback and accuracy scoring for chords from a 285-entry chord database
- Improves tracking stability with a smoothing algorithm to reduce hand jitter and lost markers by ~40%
- Highlights correct vs. actual finger positions on-screen to guide learning
- Monitors progress with real-time accuracy percentages
How we built it
We built Chordially using a modern tech stack focused on real-time guitar tracking:
- Computer Vision: Python with OpenCV and ArUco markers for finger and fretboard detection
- Fret Mapping: Mathematical fret-spacing model (1/17.817 ratio) for precise coordinate calculation
- Chord Database: 285-entry library supporting beginner chords with live accuracy scoring
- Tracking Stability: 5-frame smoothing algorithm to reduce hand jitter and lost markers by ~40%
- Frontend Feedback: On-screen chord diagrams highlighting correct vs. actual finger positions
- Analytics: Real-time accuracy percentages to monitor progress
The system detects finger positions across all strings and frets in real-time (<50 ms latency at 30+ FPS) and provides instant visual feedback to guide learning.
Challenges we ran into
- Real-time finger tracking: Maintaining <50 ms latency while tracking all strings and frets was difficult. We optimized our algorithms and implemented a 5-frame smoothing system to reduce jitter.
- Marker occlusion: Fingers sometimes blocked ArUco markers, causing lost tracking. We improved detection stability and reduced lost markers by ~40%.
- Precision of fret mapping: Accurate positioning across 12 frets required a mathematical model for fret spacing (1/17.817 ratio).
- User experience design: Balancing constructive feedback with encouragement was tricky. We iterated on on-screen chord diagrams and accuracy percentages to keep users motivated.
- Chord database coverage: Ensuring the 285-entry database supported a wide range of beginner chords without overwhelming users required careful design.
Accomplishments we're proud of
- Built a real-time guitar tutoring system with <50 ms latency at 30+ FPS
- Designed a live visual feedback system that highlights correct vs. actual finger positions
- Implemented a smoothing algorithm that reduced hand jitter and lost markers by ~40%
- Developed a 285-entry chord database supporting beginner chords with live accuracy scoring
- Created an intuitive UI that guides learning with real-time accuracy percentages
- Successfully tested the system with rapid chord transitions and maintained reliable tracking
What we learned
- Real-time computer vision requires careful optimization and calibration
- Small UI/UX details, like highlighting finger positions, significantly impact user learning
- Feedback presentation is key for keeping users motivated during practice
- Mathematical modeling can improve precision in physical tracking systems
- Testing with real users uncovers challenges that are not obvious in simulations
What's next for Chordially
- Expanded chord and scale coverage for advanced players
- Multi-instrument support, starting with ukulele or bass
- Gamified practice sessions with streaks, challenges, and progress rewards
- AR integration to provide visual guidance on finger positioning without markers
- Offline mode for practice without a connected device
- Integration with MIDI and digital guitars for enhanced accuracy
- Continued refinement of real-time feedback and stability for faster and more accurate tracking
Built With
- css
- flask
- html
- javascript
- mediapipe
- next.js
- node.js
- opencv
- postgresql
- python
- supabase
- tone.js
- typescript

Log in or sign up for Devpost to join the conversation.