A music player that connects to your cloud & distributed storage

Return to the application
CORS instructions
Privacy policy

What makes it different?

Diffuse is a decentralized music player consisting out of two main parts. One part is the music and the other is your data (eg. playlists), both of which are in locations of your choice. Meaning that there's no central server for Diffuse, all of the processing happens on your device and all the data is in your control. You can use the web version, the native version or host it yourself by downloading the pre-built packages from Github.

Music layer

This layer connects to the services on which your music is stored, no data is written to these services. You can combine all of the following:

User layer

This layer will use a single service on which to store your data. Your data being your settings, favourites, playlists, etc. You can choose between these services:

How does it work?

Diffuse locates all the music files on the given services, extracts the metadata and then stores it via the previously-explained user layer.

Supported File Formats

Note, support may vary depending on your browser.


There are a few "hidden" features:


To add something to a playlist, and create that playlist if it doesn't exist yet, you open the context menu of a track. To move tracks around in a playlist, first select the track, then drag it.


# Show me every track where the title, artist or album contains the term 'Parkway' and the term 'Drive'.
Parkway Drive

# Show me every track of which the artist's name starts with 'park'.

# Show me every track from Parkway Drive of which the album starts with "Deep Blue".
artist:Parkway Drive album:Deep Blue

# Show me every track from Parkway Drive but not their "Atlas" album.
artist:Parkway Drive - album:Atlas


The app should be usable with only the keyboard, there are various keyboard shortcuts:

CTRL + K or CMD + K // Show command palette

CTRL + L // Select playlist using autocompletion
CTRL + N // Scroll to currently-playing track
CTRL + P // Play / Pause
CTRL + R // Toggle Repeat
CTRL + S // Toggle Shuffle

CTRL + [ or ] // Previous / Next
CTRL + { or } // Seek forwards / Seek backwards

Alternatively you can use the media-control keys,
if your browser supports it.

ESC // Close overlay, close context-menu, deselect album cover, etc.

CTRL + 1 // Tracks
CTRL + 2 // Playlists
CTRL + 3 // Queue
CTRL + 4 // EQ

CTRL + 8 // Sources
CTRL + 9 // Settings


I used version one, where's my data?

There's a small link, or button if you will, on the "Settings → Import / Export" page that will allow you to import data from version 1 of the app. Note that this will need to reflect the authentication/storage method you chose in version 1.


Part of the App Ring