[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f81lpw16tu076":3},{"code":4,"message":5,"data":6,"timestamp":43},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":22,"summary_md":23,"topic":24,"github_topics":27,"license":39,"homepage":40,"updated_at":41,"history":42},"dsmurrell\u002Fonkey",17,"Learn to sing the songs you love. A free, open-source singing trainer for Mac that listens to the music you play.","Rust",294,16,46,6,[16],{"id":17,"title":18,"points":19,"comments":20,"posted_at":21},50195488,"Show HN: OnKey – I'm a bad singer, so I built an app to show where I'm off-key",228,91,"2026-10-22","A Mac app that scores your singing against songs you already own or stream, without providing the music itself.","OnKey is worth a look if you sing along to Spotify, Apple Music or YouTube on an Apple Silicon Mac and want immediate, line-by-line pitch feedback. It is a practice tool tied to one platform, not a cross-device karaoke service, and its hardware and legal constraints shape who gets value from it.\n\n## The problem\n\nA singer wants to practise a specific song and know which notes they missed. Normally that means recording yourself and replaying it against the original, or buying a karaoke track that may not match the version you love. OnKey changes the loop: play the song in your normal music app, sing along, and the app learns the lead vocal from that playback. On later plays, note bars scroll toward a playhead with your live pitch drawn over them, and you get a per-line report. The music still comes from your own app; OnKey does not supply, stream or download tracks.\n\n## What's different\n\nThe mechanism is on-device analysis of system audio it hears while you play music. After the first play, a vocal-separation model and CREPE pitch tracking extract the singer's melody, and the GAME note model turns it into one bar per syllable. That means it can work with songs you already listen to rather than a curated library, and the transcriptions stay locally on the Mac. The README states that learned songs and recordings stay on the machine and that it never saves the music it listens to.\n\nThe trade-offs follow from that design. First-play learning is the cost of entry: you cannot jump straight into scoring an unheard song, because the melody is built when the song ends. Scoring is deliberately forgiving of octave-down singing and slight lateness, which suits hobbyists but is not a strict audition judge. Sharing is limited by design: a take is shared as a short video of your voice and pitch line with no music. The \"Using OnKey fairly\" section also asks users not to publish transcribed melodies, not to modify the app to save music, and to use licensed karaoke for public events. Those are author requests and legal positions, not technical guarantees.\n\n## Who should try it\n\nThis fits a home singer with an Apple Silicon Mac (M1 or later, macOS 14.2 or later) who already uses Spotify, Apple Music or YouTube and wants to see where they are off-key while practising. The [documented setup](https:\u002F\u002Fsingonkey.app\u002Fdocs\u002F) asks for microphone and system-audio recording permissions and offers a \"Listen only\" mode for following Spotify and Apple Music by sound. A teacher or accompanist could find the per-line report useful as a second opinion.\n\nIt is a poor fit for anyone who wants to practise on Windows, Linux, an Intel Mac or a phone; the README offers no alternative platform path. It is also a mismatch for a band, a bar or an event where music must be publicly performed, or where you want to share full performances online, because sharing strips the music and the app's fair-use guidance points to licensed karaoke instead. Someone who wants a formal pedagogical program that progressively removes visual scaffolds is outside the built-in design; a commenter in the [Show HN thread](https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=50195488) raised exactly that concern, and the author pointed to a mini mode for singing without the pitch track.\n\n## Requirements and limitations\n\nThe hard floor is an Apple Silicon Mac running macOS 14.2 or later, so any Intel Mac or non-Mac user is excluded. The app needs two permissions some users will not grant: microphone access and system-audio recording. It also tries to identify songs through Shazam when the music app does not report what is playing; the README says this can be switched off in Settings, along with lyrics and the update check. Building from source avoids trusting the distributed binary, but needs Xcode command-line tools, Rust, Node, Python 3 and downloaded models; even then, a source build cannot use Shazam to name a new song because that requires the author's Apple signature. That limitation only affects YouTube and Listen-only use, since Spotify and Apple Music identify their own tracks. Ongoing upkeep includes model downloads, daily update checks, and the accuracy of community lyrics from LRCLIB, which the README does not describe as licensed for performance.\n\n## HotRepo's take\n\nHotRepo first recorded this repository on 2026-10-25, when it had 285 total stars and sat at #17 on the NEW-REPOSITORY board for Rust (not the overall or daily board); the supplied sample covers only 2026-10-24 to 2026-10-25, so persistence cannot yet be judged. The Show HN thread drew 228 points and 91 comments, which indicates discussion volume, not long-term value. For a prospective user, the practical point to check is whether the [FAQ](https:\u002F\u002Fsingonkey.app\u002Fdocs\u002Ffaq\u002F) resolves your music-app and permission setup before you rely on first-play learning.",{"slug":25,"name":26},"media","Media & Design",[28,29,30,31,32,33,34,35,36,37,38],"apple-silicon","audio","macos","music","nextjs","onnx","pitch-detection","rust","singing","tauri","vocal-training","MIT","https:\u002F\u002Fsingonkey.app","2026-10-25T03:00:23Z",[],1792915100]