SwingMusic

A self-hosted music player and streaming server for your own files, with daily mixes, listening stats and an Android client.

2.1k stars, 143 forks Python On GitHub since November 2021

SwingMusic at a glance

Open sourceYes, AGPL-3.0No paid parts in the repository
Health48 of 100Actively developed
Self-hostingDocker, Desktop appsOne-click in Umbrel, YunoHost and 1 more
AppsLinux, macOS, Windows, including ARMBuilds in GitHub releases
InterfaceEnglish onlyNo translation files found
Issue repliesWithin ~40 hoursMedian first reply; 25% of recent issues answered

What is SwingMusic?

Swing Music plays a local music library in the browser and aims at the feel of Spotify without the catalog. It builds daily mixes from what you listen to, normalizes metadata, groups album editions such as deluxe or remaster under version labels, and suggests related artists and albums. You can browse by folder, gather albums and artists into collections, view listening statistics and scrobble to Last.fm. Crossfade combined with silence detection smooths transitions between tracks. Several users can share one server, and an Android app streams from it.

Good fit if

  • You care more about browsing and discovery in a polished web UI than about third-party client support.
  • Your library has many editions of the same album and you want them kept together.

Look elsewhere if

  • You want to use existing Subsonic apps: Navidrome.
  • You want video alongside music: Jellyfin.

Before you adopt it

Swing Music switched from MIT to AGPL-3.0 in August 2025, and the repository contains no paid parts. The repository belongs to the swingmx organization, yet one developer writes about 90 percent of recent commits. It installs with a script on Linux and macOS, as a portable build on Windows, or through Docker. The latest release is v3.0.0 from June 2026.

Drafted with AI from the project's README and repository data, then checked against that data on 7 November 2026. Report a correction

How to run SwingMusic yourself

One-click install

Not listed in TrueNAS, Unraid, Runtipi, Proxmox VE Helper-Scripts and Coolify. Checked against each panel’s app catalog on 12 November 2026.

Ways to install

Docker files
Dockerfile or compose file in the repository
Docker image
ghcr.io/swingmx/swingmusic: x86-64, ARM64
Compose file
None in the repository
Setup effort
Not rated: no compose file to judge from
Kubernetes
No Helm chart in the repository
Desktop and mobile
Builds for Linux, macOS, Windows, including ARM in GitHub releases
Interface languages
English only

Install instructions: swingmx.com or the README on GitHub. Docker images and packages are checked weekly.

SwingMusic health: is it still maintained?

48 of 100, actively developed

Release rhythmEvery ~22 days6 releases in 12 months; latest v3.0.0
Issue repliesWithin ~40 hoursMedian first reply; 25% of recent issues answered
Bus factorHigh riskThe most active of 2 authors wrote 92% of recent commits
  • Activity
    13 commits in the last 90 days, the latest on 9 November 2026.
    14 / 30
  • Contributors
    2 people wrote the 13 commits of the last 90 days; the most active wrote 92% of them.
    4 / 20
  • Releases
    6 releases in the last 12 months; the latest, v3.0.0, on 12 June 2026.
    13 / 20
  • Replies to issues
    Maintainers answered 25% of recent issues, with a median first reply after 40 hours.
    12 / 20
  • Security practices
    No OpenSSF Scorecard for this repository yet, so this part gets a neutral score.
    5 / 10

Read from GitHub on 12 November 2026. How the score works

SwingMusic security

Security advisories are the vulnerabilities the maintainers disclosed on GitHub, with the versions that fix them; many advisories can mean careful disclosure as much as weak code.

Security advisories1 publishedall list a fixed version

Latest advisories

Advisories read from GitHub on 12 November 2026.

SwingMusic license: is it open source?

SwingMusic uses AGPL-3.0, an open-source license approved by the OSI.

  1. November 2021First published on GitHub under MIT.
  2. 17 August 2025Changed to AGPL-3.0. Commit: update license
  3. TodayAGPL-3.0.

SwingMusic for developers

Written in

  • Python 94%
  • Shell 5%
  • Dockerfile <1%

Getting involved

Language shares are GitHub’s count of the code in the repository.

Alternatives to SwingMusic

  • NavidromeYour Personal Streaming Service 79 health · GPL-3.0 · 24.7k stars
  • Beetsmusic library manager and MusicBrainz tagger 83 health · MIT · 15.9k stars
  • Black CandyA self hosted music streaming server 49 health · MIT · 4.4k stars
  • SnapcastSynchronous multiroom audio player 47 health · GPL-3.0 · 8.1k stars
  • koelMusic streaming solution that works. 72 health · MIT · 17.3k stars

All 38 projects in Media servers & streaming

Questions about SwingMusic

Is SwingMusic open source?

Yes. SwingMusic is published under AGPL-3.0, an OSI-approved open-source license.

Is SwingMusic still maintained?

Its health score is 48 of 100 (actively developed). It had 13 commits in the last 90 days, the latest on 9 November 2026, and its latest release came out on 12 June 2026.

Did SwingMusic change its license?

Yes. It moved from MIT to AGPL-3.0 on 17 August 2025.

How do I run SwingMusic?

You can run it with the Docker image ghcr.io/swingmx/swingmusic, as an app for Linux, macOS, Windows, including ARM and in one click from Umbrel, YunoHost and CasaOS. The README on GitHub has the exact steps.

What is SwingMusic written in?

SwingMusic is written mainly in Python (94% of the code), with Shell (5%), by GitHub’s count of the repository.

What are the alternatives to SwingMusic?

Close alternatives in the Media servers & streaming category include Navidrome, Beets, Black Candy.