gitwtfhub

wtf is mineplayer?

qingj01/mineplayer — explained in plain English

Analysis updated 2026-05-18

13KotlinAudience · generalComplexity · 3/5LicenseSetup · easy

TL;DR

A native Android music player that turns album covers into an animated particle visualizer reacting to the music, with offline playback and Android Auto support.

Mindmap

Mindmap is still cooking. Refresh in a few.

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Play locally stored music with an animated, audio-reactive particle visualizer.

REASON 2

Browse and play your music library from a car through Android Auto.

REASON 3

View synced lyrics from embedded tags or external LRC files while listening.

REASON 4

Track basic listening statistics like most played songs and artists.

What's in the stack?

KotlinJetpack ComposeMedia3OpenGL ESAndroid

How it stacks up

qingj01/mineplayerfreenetio/fakesnigegewu26-source/com.huamax
Stars131313
LanguageKotlinKotlinKotlin
Setup difficultyeasyhardhard
Complexity3/54/53/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 5min

Installing the APK requires Android 9.0 or later and granting music file read permission.

GNU GPL-3.0: you can use and modify the code, but any distributed derivative work must also be open sourced under the same license.

Wtf does this do

MinePlayer is a native Android app for playing music stored locally on your phone, built around an immersive particle visualizer rather than a plain playback screen. It works fully offline for its core features and turns each album cover into a grid of moving particles that react to the music as it plays. The visual style is ported from an earlier web project called Mineradio, with its original graphics shaders rewritten for mobile using OpenGL ES. The particle display samples the album cover into thousands of points and adds a glow effect on top, while audio is analyzed in real time so the particles move with the rhythm and beat of the song. Several visual presets are available, such as silk, vinyl, planet, and tunnel styles, and users can adjust how strongly the particles react. Playback itself is handled through Android's Media3 library, supporting background play, lock screen controls, shuffle and repeat modes, and resuming the last played track on launch. The app also works with Android Auto, exposing a browsable list of songs, albums, and artists for use in a car. It supports both embedded and external lyric files, shown in two languages if available, and includes audio tools like an equalizer, volume balancing, and gapless playback. For managing music, MinePlayer can scan the whole device or just chosen folders, automatically labels songs by audio quality, and tracks basic listening statistics such as most played songs and artists. The interface supports light and dark themes, adapts to tablets and landscape orientation, and can follow Android's dynamic color system. Building from source requires JDK 17 and Gradle, with release builds signed through environment variables or falling back to a debug signature. The project requests permissions for reading music files, background playback, and checking for updates through GitHub Releases, internet access is used only for that update check. The project is released under the GNU GPL-3.0 license.

Yoink these prompts

Prompt 1
Help me build MinePlayer from source using Gradle and JDK 17.
Prompt 2
Explain how MinePlayer's OpenGL particle visualizer reacts to audio in real time.
Prompt 3
Show me how MinePlayer's Android Auto media browsing tree is structured.
Prompt 4
Walk me through setting up a signed release build for MinePlayer.

Frequently asked questions

wtf is mineplayer?

A native Android music player that turns album covers into an animated particle visualizer reacting to the music, with offline playback and Android Auto support.

What language is mineplayer written in?

Mainly Kotlin. The stack also includes Kotlin, Jetpack Compose, Media3.

What license does mineplayer use?

GNU GPL-3.0: you can use and modify the code, but any distributed derivative work must also be open sourced under the same license.

How hard is mineplayer to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is mineplayer for?

Mainly general.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.