2e8d03e1b28b0344e873cdf69bb30f7fdfda360f
🎵 musicparty
musicparty is a self-hosted music streaming server built with Go (backend) and React (frontend). It ingests, organizes, streams, and helps you discover music from your local library, with built-in recommendations, moderation, and admin tooling.
Note
This repo is only for musicparty binary releases until the source code will get open sourced. There is currently no exact date on when this will happen.
This Readme is also not finished and will updated as we progress.
📑 Table of Contents
📖 Overview
...
✨ Features
Library Ingestion & Processing
- Scans and processes unprocessed audio files
- Transcodes and organizes the library
- Extracts metadata and cover art
- Tracks pending/unprocessable files for manual fixes
- LUFS loudness analysis and normalization workflow
Streaming & Playback
- Authenticated audio streaming with seeking (
/api/stream/:id) - Reorderable queue, shuffle, and loop/repeat modes
- Autoplay continuation backed by recommendations
- Desktop and mobile player UIs
- Media Session integration (lock screen / hardware controls)
- Sleep timer (mobile)
- Normalization toggle + boost-quiet option
Discovery & Recommendations
- Personalized home sections (liked, recommendations, last played, quick picks)
- Search across songs and albums
- Recently played and recently added views
- Per-user recommendation tuning (familiarity, exploration, recency)
- Listening mode presets (focus, discover, party, sleep, etc.)
- Recommendation cache, diagnostics endpoints, and reset support (
recResetAt)
Insights
- Recommendation scoring and low-confidence lists
- Skip analysis by song, artist, and genre
- Listening history stats and recent play events with mode context
Playlists & Library Management
- Playlists + “Liked Songs”
- Add, remove, and reorder tracks
- Playlist pinning and played tracking
- Album library add/remove endpoints
- Song-level playlist membership lookups
🚀 Quick Start
....
Description