explaingit

maotoumao/musicfree

24,801TypeScriptAudience · vibe coderComplexity · 3/5MaintainedLicenseSetup · moderate

TLDR

Free, ad-free music player for Android that plays music from any source via installable plugins, with no subscriptions or data collection.

Mindmap

mindmap
  root((MusicFree))
    What it does
      Plugin-based player
      Search and playback
      Playlist management
    Features
      Light and dark themes
      Lyrics display
      Local data storage
    Use cases
      Stream from multiple sources
      Build custom plugins
      Ad-free listening
    Tech stack
      React Native
      TypeScript
      JavaScript plugins

Things people build with this

USE CASE 1

Stream music from multiple online sources in one app without ads or subscriptions.

USE CASE 2

Create a custom plugin to add a new music source that MusicFree can search and play from.

USE CASE 3

Build a personalized music player with custom themes, lyrics, and playlists stored only on your device.

Tech stack

TypeScriptReact NativeJavaScript

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Android SDK, Node.js, and React Native CLI setup; building APK or running emulator adds complexity.

Use and modify freely for any purpose, but any distributed modifications must also be open-source under AGPL 3.0.

In plain English

MusicFree is a free, ad-free, plugin-based music player for Android and Harmony OS. The core idea is that the app itself does not bundle any music source, instead, all search, playback, and playlist features are handled through plugins that you install separately. A plugin is a small JavaScript module that connects MusicFree to a specific music source available on the internet. As long as a plugin exists for a source, you can search and play music from it inside the app. The app supports light and dark themes, custom backgrounds, lyrics display, and stores all your data locally so it never collects personal information. You can even link the lyrics of one song to another, so multiple tracks share the same lyrics. You would use MusicFree if you want a single, customizable music player that can tap into various online music sources without ads and without paying for a subscription. It is primarily aimed at Chinese-speaking users given its documentation, though the plugin architecture is open to developers who want to add sources. The project is open-source under the AGPL 3.0 license, and the app is built with React Native and TypeScript.

Copy-paste prompts

Prompt 1
How do I write a MusicFree plugin to add a new music source? Show me the basic structure and required methods.
Prompt 2
I want to fork MusicFree and add support for a specific music streaming service. What files do I need to modify?
Prompt 3
Explain how MusicFree's plugin system works and how it keeps the app lightweight without bundling music sources.
Prompt 4
How do I build and test a MusicFree plugin locally before submitting it to the community?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.