# rzru/nightingale

Machine learning powered Karaoke app (with scores!)

Repository: https://github.com/rzru/nightingale
Canonical: https://ross.abutalabs.com/products/rzru-nightingale
Homepage: https://nightingale.cafe
Language: TypeScript
License: GPL-3.0
License Family: copyleft
Topics: ai, karaoke, karaoke-application, ml, party, karaoke-game, demucs, machine-learning, machine-learning-algorithms, rust, whisper, whisper-ai, whisperx, shadcn, tailwind, tauri, tauri-app, react
Last push: 2026-08-26T18:39:40+00:00

## Health v2 (maintenance only)
Score: 81/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 98, longevity 12
- inputs: {"age_days": 171, "days_push": 7, "days_rel": 19, "gap_med": 7, "n_releases_24m": 14}
- flags: young
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1423, forks 100 (observed 2026-08-28T04:04:41.233150+00:00)

## What it is
Nightingale is an open-source karaoke application that turns any song in your music library into a karaoke track using neural networks. It separates vocals from instrumentals (UVR/Demucs), transcribes lyrics with word-level timestamps (WhisperX), and plays back with synchronized highlighting, pitch scoring, and key/tempo controls.

## Use cases
- turn my music library into karaoke tracks
- karaoke app with automatic pitch scoring
- separate vocals from instrumentals for singing practice
- get word-level synced lyrics for any song
- host karaoke night from my Plex or Jellyfin library
- self-hosted karaoke server for the whole house
- play UltraStar Deluxe songs with a modern app

## When to choose
- you want karaoke from your existing music files, Plex, Jellyfin, or Navidrome library without manual prep
- you need automatic vocal separation and word-level lyric alignment including CJK songs
- you want a self-contained app with pitch scoring, key/tempo shifting, and player profiles
- you want a self-hosted web mode so phones, tablets, and TVs can join from a browser

## When to avoid
- you need a code-signed installer or strict corporate security policies (the app is unsigned on macOS)
- you only want a lightweight lyrics player without ML analysis overhead
- you have no GPU and need fast analysis (CPU mode works but is slow)
- you need a cloud-hosted multi-tenant karaoke service

## Facets
- artifact type: application
- maturity: active
- function: machine-learning, audio-processing, speech-recognition, gui, self-hosted
- domain: machine-learning, media, entertainment, self-hosted
- platform: windows, cross-platform, self-hosted, rust, python
- tags: karaoke, stem-separation, whisper, demucs, lyrics-alignment, pitch-scoring, tauri, ultrastar, plex, jellyfin, navidrome, media, audio, natural-language-processing, linux, macos, desktop, docker

## Member repositories
- rzru/nightingale (main) score 81

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:41.233150+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:37:39.780934+00:00, confidence not recorded.
  - readme: https://github.com/rzru/nightingale (fetched 2026-08-28T04:04:41.233150+00:00, sha 770f3195502e)
  - homepage: https://nightingale.cafe (fetched 2026-08-29T11:50:10.684573+00:00, sha a0a160e9b39c)
  - site_page: https://nightingale.cafe/docs (fetched 2026-08-29T11:50:10.694616+00:00, sha 593fab595bd3)
  - site_page: https://nightingale.cafe/docs/getting-started.html (fetched 2026-08-29T11:50:10.696614+00:00, sha e1923633d7d9)
  - site_page: https://nightingale.cafe/docs/self-hosted.html (fetched 2026-08-29T11:50:10.698547+00:00, sha ef6873e5554a)
  - site_page: https://nightingale.cafe/docs/how-it-works.html (fetched 2026-08-29T11:50:10.700400+00:00, sha 0a3e89b77518)
- Data as of 2026-08-30T08:39:29.467469+00:00.
