frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Show HN: OnKey – I'm a bad singer, so I built an app to show where I'm off-key

https://github.com/dsmurrell/onkey
2•dsmurrell•3h ago
I'm not a good singer, but strangely enough I still like singing. I've improved a little over time with singing apps, but their song lists are limited by licensing, so I'd often open a song expecting the original and find a cover I didn't want to sing to.

So I built OnKey: a free, open-source (MIT) Mac app that listens to whatever you're playing in Spotify, Apple Music or YouTube, learns the singer's melody, and shows you live where you're sharp or flat, with a score at the end. Nightingale did something similar years ago for your own audio files. OnKey works with the music you already stream.

Demo (1:35, sound on): https://singonkey.app

The first time you play a song, you can sing along while it listens, or play a whole playlist and let OnKey learn the songs in the background before you come back to sing them. When a song finishes it learns the notes on your Mac (a couple of minutes), and from the second play the notes scroll towards you before you sing them.

Learning the song and scoring you both happen on your Mac. No account, no analytics, and the music is never saved or sent anywhere. Your takes stay there too. To check the score means something, I ran 20 recordings of singers, from poor to professional, that music experts had already scored. OnKey ranked them in nearly the same order as the experts did.

It's still rough in places: busy mixes and harmonies can confuse which voice is the tune, and now and then a note lands an octave off. Scoring is forgiving on purpose for now, set for beginners like me, so stricter modes for better singers are next. And it's Apple Silicon and macOS 14.2+ only.

I'd love to hear where it scores you unfairly or the notes go wrong, and I'm happy to answer questions about how it hears the music and learns a song.

Comments

dsmurrell•58m ago
Hi All

I was pretty terrible at singing, now I’d say I’m bad but not terrible. This is because I’ve been using a singing app (won’t name it here) that scores me on my pitch and timing throughout the song so that I can improve.

Lately however, the app I’ve been using has flooded their song list with songs that aren’t originals. I didn’t like this at all as for me, it’s easier to try to improve when you’re singing along to the original.

So, I asked an agent (Claude Code) if it could write some code to listen to Spotify and also listen to me and see if it could detect both pitches and score me. It impressed me by writing some Python and showing me my pitch in the terminal!

It couldn’t go all the way though and detect the singer’s pitch in real time.

So I found the next best setup and built OnKey, a Mac app that needs to listen to the song once (it doesn’t save it) and then when it’s learnt the song (takes a couple of minutes), you can sing along to the pitch track that it’s learnt. OnKey is free to use and open source under the MIT license.

It can listen to Spotify, Apple Music, and YouTube playing in your browser with the right permissions.

During the build I found that someone had done something similar in Nightingale, but this requires a library of songs exported to disk and who has this in 2026 (maybe some of you ;) - but we need to help the normies too).

You can check out a demo video on the site of me singing (warning given) here: https://singonkey.app

The app sends out to find the song info (short Shazam fingerprint, and looks up song details), lyrics (from LRCLIB), and checks for updates.

The app never sends the music (it doesn’t save this to disk) and your voice. Everything you’d expect to stay private does.

It’s still weak in a few places:

- when the song’s backing is noisy it’s hard to pick the pitch track out

- sometimes it gets a note an octave off

- it’s limited to Apple Silicon Macs, M1 or later, and only macOS 14.2 up because extra drivers aren’t required past this point

- the scoring is built for beginners like me so it’s fairly easy on you

Would love for people to try it out and let me know what works and what doesn’t for them!

Show HN: Run full iOS 16.5 firmware on Android Devices

https://github.com/oosexgang/hackios-xnu-kernel
91•aghuang•2h ago•35 comments

Show HN: Uberblok – an interactive museum of ZFS internals

https://uberblok.storagebits.workers.dev/
22•storagebits•1d ago•1 comments

Show HN: Dovepass – can I legally fly a drone along this exact path in SF?

https://dovepass.com
22•nimitmehra•2d ago•5 comments

Show HN: Fire hazard zone, power line risk and fire history for any CA address

https://www.firezones.info
2•raffys•1h ago•0 comments

Show HN: Stackdome – An open source self-hostable Railway alternative on K8s

https://github.com/axernel-labs/stackdome
7•basilpbabu•1h ago•0 comments

Show HN: pdf editor - I rebuild PDFs into editable HTML objects, in the browser

https://blueberry-shake.pages.dev/
2•HopeLion•1h ago•0 comments

Show HN: Omnara – Open-source alternative to Claude Managed Agents

https://github.com/omnara-ai/omnara
104•kmansm27•1d ago•31 comments

Show HN: OnKey – I'm a bad singer, so I built an app to show where I'm off-key

https://github.com/dsmurrell/onkey
2•dsmurrell•3h ago•1 comments

Show HN: App Factory – 42 Claude Code skills to ship apps to App Store and Play

https://github.com/yybd/app-factory
2•yybd•4h ago•0 comments

Show HN: SimCity, but with Permits

https://permit.petercai.com/
924•pcai•1d ago•417 comments

Show HN: Lumabri – Run large AI models across your computers and servers.Pure C

https://github.com/JustVugg/lumabri/blob/main/README.md
4•vforno•4h ago•0 comments

Show HN: Sumi.css – CSS Framework

https://github.com/vladocar/Sumi.css
93•bepero•1d ago•27 comments

Show HN: RigCheck – can your GPU or Mac run this open model? Sourced, open data

https://localrigcheck.com/
3•chenzige•5h ago•0 comments

Show HN: ULDA – Client-side encryption with a simple JavaScript API

https://demo.ulda.io/
21•nonsence•3d ago•4 comments

Show HN: AI-built browser games, collected in one place

https://playgroundarcade.com/
35•richleigh•2d ago•3 comments

Show HN: I built a Markdown and raw HTML blog platform scoring 99 on PageSpeed

https://bloffy.co/en
25•textlanes33•17h ago•23 comments

Show HN: Tinytowns, a small model to generate realistic sounding town names

https://quirkyagents.com/wizard/projects/tinytowns/
3•dave8172•8h ago•0 comments

Show HN:Odd Orbit, live 3D globe of quakes, weather, satellites and UFO reports

https://oddorbit.app/
7•oddorbitapp•1d ago•4 comments

Show HN: Aw-1 – Deterministic AST circuit breaker and kernel jail for AI agents

https://github.com/MvikManners/aw1-circuit-breaker
2•MvikVela•10h ago•0 comments

Show HN: git-found, fixes "Repository not found" with multiple GitHub accounts

https://github.com/advaith334/git-found
2•Advaith_12•10h ago•2 comments

Show HN: Death Plan Switch, a self-hosted dead man's switch for solo devs

https://deathplanswitch.com/
107•romeo19361•2d ago•66 comments

Show HN: Computer use on the phone itself: a 2B model that operates Android apps

https://getopposable.com/blog/computer-use-on-the-phone
15•erikkannike•1d ago•4 comments

Show HN: Twine is a meta-harness with workflows, cross-agent memories and traces

https://github.com/standing-desks/twine
5•SurfingAlpaca•16h ago•1 comments

Show HN: Penmentor – Claude marks up your handwritten math like a teacher

https://github.com/AbdullahAlhariri/penmentor
65•abdullahalharir•2d ago•9 comments

Show HN: Rouler – Steer Windows traffic per app or IP across multiple interfaces

https://rouler.io/
27•brndnbuilds•2d ago•7 comments

Show HN: Jev Cards, Can you beat a vision model at a picture quiz?

https://jevcards.com
71•totisjosema•2d ago•53 comments

Show HN: The Zelda timeline to catch up before the Ocarina of Time remake

https://legendofhyrule.com/
226•jsomau•4d ago•129 comments

Show HN: Overdesigned Simple Solitaire

https://defaultsolitaire.app/
5•fsloth•20h ago•9 comments

Show HN: Cathode, a Gtk4 YouTube player based on mpv and yt-dlp

https://github.com/andunieee/cathode
5•andunie•15h ago•0 comments

Show HN: HN Sieve – every Show HN scored and summarized by AI

https://hnsieve.com
3•cezarvil•15h ago•0 comments