Skip to content
bonavidaPublic

About

๐Ÿš€ A minimalist desktop music player

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Latest commit

ย 

History

81 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Sputnik

A minimalist desktop music player for Windows, macOS and Linux.

Sputnik on macOS, tinted green by the cover of the song that is playing

  • Drop songs or whole folders, or add them from the menu. Reorder by dragging (or Alt+โ†‘/โ†“), sort it by title, album or length, shuffle, repeat the list or one song.
  • Save playlists, rename them in place, and import or export them as M3U8 (they open in VLC, foobar2000 and most players).
  • Light and dark themes, plus a calm tint taken from the cover of the song that is playing. Text contrast is guaranteed (WCAG AA) for any cover.
  • Keyboard shortcuts, media keys and the OS media controls. Spanish and English.
  • Scrobbling to Last.fm (Settings โ†’ Connect to Last.fm). Listens made offline are kept and sent later.
  • Tells you when a new version is out. On Windows it downloads, verifies and installs it for you; on macOS and Linux it opens the right download.
  • Your queue, volume and settings are restored on the next start.

Plays MP3, AAC/M4A, FLAC, WAV, Ogg Vorbis and Opus (WMA and ALAC are not supported).

Keyboard shortcuts

Key Action
Space Play / pause
โ† / โ†’ Seek 5 seconds
โ†‘ / โ†“ Move the selection
Enter Play the selected song
Delete / Backspace Remove the selected song
Alt + โ†‘ / โ†“ Move the selected song
Alt + Enter Show the selected song in its folder
M / S / R Mute / shuffle / repeat mode
Ctrl/Cmd + O Add songs
Ctrl/Cmd + S Save the playlist
Ctrl/Cmd + E Export the playlist

Download

Get the installer for your system from the latest release:

System File
Windows 10/11 (x64) Sputnik-<version>-setup.exe
macOS (Apple Silicon) Sputnik-<version>-arm64.dmg
macOS (Intel) Sputnik-<version>-x64.dmg
Linux Sputnik-<version>-x86_64.AppImage or .deb

First launch: the installers are not signed

Signing needs paid certificates from Microsoft and Apple, so the system warns the first time you open Sputnik. The app is safe to run; this is how to get past the warning:

  • Windows: SmartScreen shows "Windows protected your PC". Click More info, then Run anyway.

  • macOS: open the .dmg and drag Sputnik to Applications. The first time, right-click (or Control-click) Sputnik in Applications and choose Open, then Open again. If macOS says the app "is damaged and can't be opened", run this once in Terminal and open it again:

    xattr -cr /Applications/Sputnik.app
  • Linux: make the AppImage executable (chmod +x Sputnik-*.AppImage) or install the .deb with sudo apt install ./Sputnik-*.deb.

Size on Windows x64 (Electron 44):

Installer Installed
Sputnik 86.4 MB 296 MB
Same app, default electron-builder settings 111.5 MB 369 MB

Almost all of it is Chromium: the app itself is under 1 MB.

Development

Requirements: Node.js 24 and pnpm 10.

pnpm install
pnpm dev          # Electron with hot reload
pnpm dev:web      # UI only, in the browser, with demo data
pnpm test         # unit and integration tests
pnpm dist         # installer for the current OS, in release/

To build with Last.fm scrobbling, copy .env.example to .env.local and fill in the key and secret of a Last.fm API account. Without them everything works and the Last.fm option is hidden.

Built with Electron, React 19 (with React Compiler), TypeScript, Vite, Tailwind CSS, Zustand, dnd-kit and music-metadata. Tested with Vitest and Testing Library.

Architecture, conventions and procedures are in AGENTS.md.

License

MIT

About

๐Ÿš€ A minimalist desktop music player

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages