Featured projects#Open source

Spotube: an open-source cross-platform player with pluggable sources

An open-source music client built with Flutter that covers desktop and mobile; music sources, playlists, and metadata are all plugged in, playback runs locally with no telemetry, and tracks can be downloaded with tags for offline listening.

Project facts

GitHub Ecosystem
Repositorygithub.com/KRTirtho/spotube
Language
Dart
Stars
49,409
Data checked
2026-09-25

Snapshot figures reflect the check date and may change over time.

Spotube is an open-source music streaming app written in Flutter, covering Windows, macOS, Linux, Android, and iOS—five platforms in all. The question it’s trying to answer: does listening to music have to mean locking yourself into one commercial streaming service? Its answer is to hand music sources, metadata, and playlists entirely over to plugins: the community already provides ready-made plugins for popular platforms, and developers can write their own. Playback control runs locally rather than on a server, so the app collects no telemetry, keeps the install size small, and uses less bandwidth. GitHubDaily recommended it back in February 2025, when it was still described as a third-party Spotify client; the project has since evolved into a general-purpose, plugin-driven music streaming platform.

Core features

  • Plugin-driven: music metadata, playlists, and audio sources are all supplied by plugins—use community plugins directly, or write your own to plug in a custom service.
  • Free downloads: tracks can be downloaded locally with complete metadata tags attached.
  • Full platform coverage: official builds for all three major desktop OSes plus Android and iOS, with a consistent experience across desktop and mobile.
  • Synced lyrics: whether or not the plugin in use provides lyrics, the app has built-in time-synced lyric display.
  • No telemetry: collects no telemetry, diagnostic information, or user data of any kind.
  • Native performance: built on Flutter rather than Electron—the maintainers stress it isn’t just another Electron wrapper, and both install size and bandwidth use stay relatively lean.

Typical use cases

  • Switch between desktop and phone while keeping the same player and a consistent local playback experience.
  • Download favorite tracks along with their metadata tags to listen offline during a commute or without network access.
  • Developers writing or reusing community plugins to plug their own music service or source into the client.

Quick start

On Windows, install via winget:

winget install --id KRTirtho.Spotube

On macOS, add the tap first, then install:

brew tap krtirtho/apps
brew install --cask spotube

On Linux, Flatpak is recommended: flatpak install com.github.KRTirtho.Spotube; for Android, get the APK from F-Droid (package name oss.krtirtho.spotube) or GitHub Releases.

Summary

This suits users who don’t want to be locked into a single subscription service, who care about privacy, and who need offline listening on both desktop and mobile; developers who want to plug in a custom music source can also get up and running via the plugin mechanism. A few things worth noting: the project is licensed under BSD-4-Clause (which GitHub classifies as “Other”), so check the terms fit your distribution scenario before use; the iOS version isn’t on the App Store and can only be sideloaded as an IPA via tools like AltStore; and the Linux AppImage has been temporarily removed due to stability issues. The current version no longer bundles a specific streaming service—music sources depend entirely on the plugins you configure. The old “subscription-free, ad-free” pitch reflected its early days as a Spotify client; what you can actually listen to now depends on which plugins you use. Overall, it’s a clearly conceived, actively maintained, local-first music client.