Skip to main content

Raphson music player

Project description

Raphson Music Player

Web-based social music player for communities (hacker spaces, maker spaces).

What makes this different from other music players? It is designed around listening with groups. Instead of playing a single playlist, this music player allows enabling many playlists from different people. Tracks are shuffled from multiple playlists into a single queue. No more arguing about which music to play, everyone's music get played.

An additional benefit of this is music discovery, even when you're listening solo you might like to mix up your own music with someone else's.

Screenshot of music player

Features

  • Shuffle
    • Shuffle algorithm ensures the least recently played songs are picked first.
    • Of course, you can also manually browse or search the music collection and queue specific songs.
  • Gets out of your way
    • We try to minimize the number of clicks required to perform any action. Buttons should be large and not hidden behind submenus.
    • Hotkeys are available to speed up common actions
  • Responsive and mobile compatible
    • Touch-friendly interface
    • Low quality audio/image option is available to save data
    • Implements the Subsonic protocol, allowing you to use native apps
  • Metadata management
    • Large, high quality album covers are fetched from MusicBrainz
    • Time synced lyrics are automatically fetched from various sources
    • Metadata editor to easily correct metadata while listening
    • Audio is loudness-normalized ensuring consistent volume for all genres.
  • File management
    • Built-in web file browser to download, upload, rename and delete files
    • WebDAV protocol support allows you to connect with an external file manager application
    • Built-in music downloader using yt-dlp
    • Also keyboard-friendly interface; hotkeys are available for common actions, allowing you to skip a track while wearing welding gloves.
  • Statistics
    • See what others are playing now or in the past
    • Statistics page with graphs based on historical data
    • Last.fm scrobbling (each user can connect their own last.fm account)
  • News
    • Optionally, play hourly news just like real radio.
  • Fun
    • Enable 'Album cover meme mode' to replace album covers by (sometimes) funny memes related to the song title.
    • Play games with your music collections, like a music guessing game.
  • Minimal: fast and secure
    • Written in pure HTML, CSS and JavaScript with only one third party library (eCharts). The frontend should be fast, even on an old laptop or cheap single board computer.
    • Queued songs are cached, temporary network connection issues are no problem.
    • Python dependencies are kept to a minimum (aiohttp, jinja2, babel, cryptography).
    • Very strict Content-Security-Policy allows no communication from clients to the internet.
    • The server should be simple to run with one command. No other services, like a database, are needed.

Screenshots

See docs/screenshots.md.

Usage

See docs/installation.md.

Related projects

  • Headless client: to run on a headless machine with an audio output. Can be controlled remotely.
  • Headless client HA: Home Assistant integration to control a headless client.

Development and translation

See docs/development.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

raphson_mp-2.10.0.tar.gz (3.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

raphson_mp-2.10.0-py3-none-any.whl (922.9 kB view details)

Uploaded Python 3

File details

Details for the file raphson_mp-2.10.0.tar.gz.

File metadata

  • Download URL: raphson_mp-2.10.0.tar.gz
  • Upload date:
  • Size: 3.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.7

File hashes

Hashes for raphson_mp-2.10.0.tar.gz
Algorithm Hash digest
SHA256 eae95c1d3818d0c05cdacafa2953b2498792750c4a0eb75e37cd3f9279863eb1
MD5 dfe28b9d1f9b3e05d42337e82fa0938f
BLAKE2b-256 85bf1b40bb85de233e76e666c618762f87d01b11f90e4aaf314cc5946c110ee1

See more details on using hashes here.

File details

Details for the file raphson_mp-2.10.0-py3-none-any.whl.

File metadata

  • Download URL: raphson_mp-2.10.0-py3-none-any.whl
  • Upload date:
  • Size: 922.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.7

File hashes

Hashes for raphson_mp-2.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 34a9a6071afcb3b2c0a1908dc38990ac1391bf4b77f99ee0fc3a8a9c08ad2ad5
MD5 1844d79b3970785cbcf6c970b6b8dd1b
BLAKE2b-256 a9180e89440fe2e7c961fadb2a717f9690b3929e554610dc17d1924ab2ab0818

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page