
gittech. site
for different kinds of informations and explorations.
Polaris, a self-hosted music streaming server in Rust
Published at
Feb 5, 2025
Main Article
About
Polaris is a self-hosted music streaming server, to enjoy your music collection from any computer or mobile device. It is free and open-source software, without any kind of premium version.
The goals of this project are:
- π₯ Exceptional performance and responsiveness
- ποΈ First-class support for large music collections (100,000+ songs)
- π¦οΈ Ease of installation, deployment and maintenance
- β¨ Beautiful user interface
Try It Out!
Check out the demo over at https://demo.polaris.stream, featuring a selection of Creative Commons Music. The credentials to access this server are:
Username: demo_user
Password: demo_password
Features
- π₯οΈ Runs on Windows, Linux, BSD, or through Docker
- π Support for
flac
,mp3
,mp4
,mpc
,ogg
,opus
,ape
,wav
andaiff
files - π Dark mode variants and customizable color palette
- πΏοΈ Browse your music by album, artist or genre
- π Browse your music as a file tree
- π Song audio-waveform visualization
- π·οΈ Support for multi-value fields in song metadata (eg. multiple artists per song)
- ποΈ Powerful search functionality with per-field queries
- βοΈ Plain-text configuration also editable with built-in UI
- π₯ Setup multiple users, each with their own playlists
- π± Listen to your music on the go:
- Polaris Android (Google Play Store Β· F-Droid Β· Repository)
- Polarios (App Store Β· Repository) [third-party]
Installation
Documentation
- π Changelog
- π§ Configuration
- π· Contribute to Polaris
- π Maintenance Runbooks
The Polaris server API is documented via OpenAPI. Every installation of Polaris distributes this interactive documentation. To access it, open http://localhost:5050/api-docs/ in your browser on the machine running Polaris.
Credits & License Information
Music featured in the demo installation: