Skip to content

Repository files navigation

 Noctis

A music player that respects what's yours. Zero tracking, total control.

Discord   Downloads   Latest

License: MIT Platform .NET Build


Screenshots

Word-by-word karaoke lyrics

Fullscreen lyrics

Home

Home

Cover Flow

Cover Flow

Album pages

Album page with the lyrics panel

Themes & accent colors

Themes

More screenshots — Hi-Res library, parametric EQ, lyrics panel, queue, artist pages
Hi-Res library Parametric EQ
Album page Queue

Artist pages


Install

Windows — via a package manager:

# winget
winget install heartached.Noctis

# Scoop (add the bucket once, then install)
scoop bucket add noctis https://github.com/heartached/scoop-bucket
scoop install noctis

# Chocolatey
choco install noctis

Or download the installer / portable zip from the latest release.

macOS / Linux — download the .dmg / AppImage from the latest release.


Features

Sound

  • Plays everything — FLAC, ALAC, WAV, AIFF, APE, WavPack, MP3, AAC, OGG, Opus, WMA, M4A
  • Bit-perfect exclusive output on Windows, with a live signal-path badge
  • Parametric EQ with presets
  • Gapless playback, crossfade & AutoMix
  • ReplayGain volume leveling
  • Batch converter between formats (ffmpeg)

Library

  • Songs, Albums, Artists, Folders & Playlists views
  • Albums split into Albums / Singles / EPs / Compilations
  • Smart playlists & favorites
  • Full metadata editor — artwork, lyrics, per-track options
  • Drag & drop import, watched folders, bulk edits
  • Duplicate finder & file organizer
  • Command palette
  • Listening stats + a monthly / yearly Wrap

Lyrics

  • Word-by-word karaoke lyrics, Apple Music style
  • Auto-fetched from LRCLIB & NetEase, cached offline
  • Lyrics panel you can keep open next to any page
  • Built-in lyrics editor with .lrc export
  • Share lyrics as image cards or short clips

Look & feel

  • Cover Flow browsing
  • Animated cover art
  • Ambient backgrounds on lyrics & album pages
  • Themes & accent colors, plus a custom theme editor
  • Floating mini player

Connect

  • Discord Rich Presence
  • Scrobble to Last.fm & ListenBrainz
  • Stream from Navidrome, SMB & WebDAV
  • Web remote — control playback from your phone
  • Artist images & bios via MusicBrainz and Deezer
  • Updates itself from GitHub releases

Discord Rich Presence


Build

git clone https://github.com/heartached/Noctis
cd Noctis
dotnet run --project src/Noctis/Noctis.csproj

Requirements: .NET 8 SDK

Supported platforms: Windows 10/11 (x64), macOS 12+ (Intel & Apple Silicon), Linux (x64 & ARM64).

Native dependency — libvlc

  • Windows: bundled automatically via NuGet — nothing to install.
  • macOS: install VLC (Noctis loads libvlc from /Applications/VLC.app):
    brew install --cask vlc
  • Linux: install via your package manager. The -dev package provides the unversioned libvlc.so symlink that the .NET loader looks for:
    # Debian/Ubuntu
    sudo apt install libvlc-dev
    # Fedora
    sudo dnf install vlc-devel
    # Arch
    sudo pacman -S vlc

Running a downloaded build (macOS / Linux)

The macOS and Linux artifacts on the Releases page are unsigned self-contained builds. After unzipping:

macOS:

cd Noctis-macos-arm64
xattr -dr com.apple.quarantine .   # remove Gatekeeper quarantine flag
./Noctis

Linux:

cd Noctis-linux-x64
chmod +x Noctis
./Noctis

Build for another OS

dotnet publish src/Noctis/Noctis.csproj -c Release -r linux-x64   --self-contained
dotnet publish src/Noctis/Noctis.csproj -c Release -r osx-arm64   --self-contained
dotnet publish src/Noctis/Noctis.csproj -c Release -r osx-x64     --self-contained
dotnet publish src/Noctis/Noctis.csproj -c Release -r linux-arm64 --self-contained

Star History

Star History Chart


Feedback

If you have any feedback about bugs, feature requests, etc. about the app, please let me know through issues.

Yours Truly, heartached.


License

MIT — see LICENSE


Warning

Windows may flag the installer as untrusted because it isn't code-signed. This is normal for indie software — the app is safe to use.

Releases

Contributors

Languages