Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Music Analysis, Chord Recognition, Beat Tracking, Guitar Diagrams, Piano Visualizer, Lyrics Transcription Application, context-aware LLM inference for analysis from uploaded audio and YouTube video
| Date | Stars |
|---|---|
| 2026-07-31 | 357 |
| 2026-08-01 | 359 |
| 2026-08-06 | 359 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
15.0
growth rate 0.00%/day
# ChordMini
Open-source music analysis tool for chord recognition, beat tracking, piano visualizer, guitar diagrams, lyrics synchronization, and experimental melody transcription.
## 🤝 Contributing
We welcome and appreciate all contributions made to the project, whether it's code, documentation, testing, or feedback. Please see our [Contributing Guidelines](CONTRIBUTING.md) for details on how to get involved.
---
## Citation
If you use or reference ChordMini in your work and find it useful, please cite:
**BibTeX:**
```bibtex
@misc{phan2026enhancingautomaticchordrecognition,
title={Enhancing Automatic Chord Recognition via Pseudo-Labeling and Knowledge Distillation},
author={Nghia Phan and Rong Jin and Gang Liu and Xiao Dong},
year={2026},
eprint={2602.19778},
archivePrefix={arXiv},
primaryClass={cs.SD},
url={https://arxiv.org/abs/2602.19778},
}
```
**Plain text (for non-LaTeX users):**
> Nghia Phan, Rong Jin, Gang Liu, and Xiao Dong. "Enhancing Automatic Chord Recognition via Pseudo-Labeling and Knowledge Distillation." arXiv preprint arXiv:2602.19778, 2026. https://arxiv.org/abs/2602.19778
## Features Overview
### 🏠 Homepage Interface


Clean, intuitive interface for YouTube search, URL input, and recent video access.
### 🎵 Beat & Chord Analysis



Chord progression visualization with synchronized beat detection and grid layout with add-on features: Roman Numeral Analysis, Key Modulation Signals, Simplified Chord Notation, Enhanced Chord Correction, and **song segmentation overlays** for structural sections like intro, verse, chorus, bridge, and outro.
### 🎵 Guitar Diagrams

Interactive guitar chord diagrams with **accurate fingering patterns** from the official @tombatossals/chords-db database, featuring multiple chord positions, synchronized beat grid integration, and exact slash-chord matching when the database includes a dedicated inversion shape.
### 🎹 Piano Visualizer

Real-time piano roll visualization with falling MIDI notes synchronized to chord playback. Features a scrolling chord strip, interactive keyboard highlighting, smoother playback-synced rendering, segmentation-aware dynamics shaping, and **MIDI file export** for importing chord progressions into any DAW.
### 🎻 Experimental Melody Transcription


Sheet Sage can optionally add an estimated melodic line on top of the Piano Visualizer, with separate playback, caching, and MIDI export support. This feature is still experimental: inference is slower than the main beat/chord pipeline, and note timing or accuracy may be limited.
### 🎤 Lead Sheet with AI Assistant

Synchronized lyrics transcription with AI chatbot for contextual music analysis and translation support.
---
## 🚀 Quick Setup
### Prerequisites
- **Node.js 20.9+** and **npm 10+**
- **Python 3.10.x** (3.10.16 recommended for the backend)
- **Docker** (recommended for the standalone Sheet Sage melody service)
- **Git LFS** (for SongFormer checkpoints)
- **Firebase account** (free tier)
- **Gemini API** (free tier)
### Setup Steps
1. **Clone and install**
Clone with submodules in one command (for fresh clones)
```bash
git lfs install
git clone --recursive https://github.com/ptnghia-j/ChordMiniApp.git
cd ChordMiniApp
git lfs pull
npm install
```
#### If you already cloned the repo before SongFormer was added
```bash
git pull
git lfs pull
```
#### Verify that `git lfs pull` completed
> [!NOTE]
> `git lfs pull` downloads the larExcerpt of 20,686 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:1774e92a7007f65b, desc:transcription