A beautiful music player with a retro console experience in mind.
Website · Themes · Plugins · Docs · Privacy
- Your music: Use local files or custom providers for music.
- Synced lyrics from many providers, with karaoke highlighting and romanization
- Made for handhelds: full gamepad support for the best console experience
- Dual screens: For dual-screen handheld devices, or just multi monitors
- Themes that change colors, fonts, icons and animated backgrounds, with a theme editor
- Plugins in Lua that add music sources, lyrics, visualizers and more
- Sound effects: speed and pitch, 8-bit, radio, gramophone, acapella and more, everything live.
- Soundboard to play your own sounds over the music
- Visualizers to see your music in fancy ways
- Chromecast support to available devices.
- Offline downloads for available music sources.
- Gapless playback and volume normalization
- Tracker and MIDI files, with your own SoundFonts
- Scrobbling to Last.fm and ListenBrainz
- Discord Rich Presence, media controls and the system tray
Builds for Android, Linux (x64 and arm64), Windows and macOS are on the releases page.
Themes and plugins are installed from Nari itself, or from narimusic.com.
Come hang out, share your themes and plugins, and help shape Nari on Discord!
Found a bug or have an idea? Open an issue.
Want to make your own theme or plugin? The docs cover everything, and the theme editor makes a theme without writing anything.
Nari is made with Godot 4.7. The native libraries are already built in addons/*/bin/,
so opening the project in Godot is enough to run it.
Android exports use a Gradle build, so set up the Android SDK and JDK in Godot first. Godot's Exporting for Android guide walks you through it.
Everything else runs with just and Python 3:
just build # every platform, plus the plugins and store metadata
just build linux android # only those
just build aab # signed App Bundle for Google Play
just test # the native library's tests
just take-screenshots
just generate-metadataGodot, the Android SDK and the JDK are found on PATH or through GODOT, ANDROID_HOME and JAVA_HOME. Put
them in a .env file (see .env.example) if they aren't found. just fdroid builds the APK fully from source the
way F-Droid does, and flatpak/ has the Flathub manifest.
- Sonora, a native music client whose work on lyrics and music providers helped Nari a lot. Go check it out!
- Godot Engine, godot-rust, FFmpeg and libopenmpt
- The Jost font and Google's Material Symbols
- Everyone in the Discord who tested Nari and made themes and plugins for it, THANK YOU SO MUCH!
If you enjoy Nari and have an extra buck, consider supporting it on Ko-fi!
Nari is free software under the GNU General Public License v3.0 or later. Themes and plugins keep their own licenses.









