An elegant, efficient, easy-to-setup and arguably the best discord rich presence!

  • By Monochromish
  • Last update: Dec 19, 2022
  • Comments: 5


Badge Badge Badge Badge

An elegant, efficient, easy-to-setup and arguably the best discord rich presence! Written in Electron with daisyUI.

Supports GIF album covers and provides information such as Track name, Track Album, Track Artist, Last Played, Your Scrobbles and much more! Customizable and by default, it updates status every 30 seconds.


Works with

This Last.FM Discord Rich Presence works with all music platforms that supports; such as:

  • Spotify - Works best
  • iTunes or Apple Music
  • Youtube
  • Google Play Music
  • Tidal
  • Deezer
  • SoundCloud
  • Mixcloud
  • Sonos
  • Hype Machine
  • 8tracks
  • Bandcamp
  • Pandora
  • And many more!


  1. Node.js from here.
  2. account from here and a API from here.
  3. Optional - A Discord Application from here

How to setup

  1. Download the windows binary from its website or from the releases tab.
  2. Run the setup. If you get a Windows SmartScreen Protection Popup, click on the More info button and then click on Run anyway button. Complete the setup and run the application.
  3. Provide your details and then click on the Enable/Disable button.

Contribution and issues

Feel free to fork this repository and create pull requests, I will review them when I get notified. To create an environment, you would have to open the root folder in a terminal and install the dependencies. Then just run npm start and it should open up a window if and when it's ready.



Code for this rich presence was fully written by Monochromish (at the time of writing this) and no credits to me are being provided in the rich presence! Please share this repository to support this project. If you come across any errors or need help with setting up, feel free to DM me on Discord or join my development server.



  • 1

    Missing cover make app cash.

    When an album has no cover on, the API returns nothing. The value of "data.cover" is set to "Null". As discord-rpc requires a value, the script crashes.

    A workaround could be setup before submitting the data to discord :

    After line 133 of index.js

    if (!data.cover){
        data.cover = FallbackImageUrlOrBase64;
  • 2

    [suggestion] close and still run on the background

    hi! thank you so much for this! i love showing what im listening to, thank you very much, to a music lover to another. in my opinion, to make it even better than it already is would be if you could close the app, minimizing it to the task tray. also would really love if the api keys didnt need to be reset everytime i open the program. if theres already a way to do this, please do tell! im not tech savvy and would need some help doing it... still, thank you so much for the app, its very very cool! much love!

  • 3

    [ImgBot] Optimize images

    Beep boop. Your images are optimized!

    Your image file size has been reduced πŸŽ‰


    | File | Before | After | Percent reduction | |:--|:--|:--|:--| | /assets/play.gif | 436.80kb | 413.19kb | 5.41% | | /Example.gif | 257.46kb | 256.18kb | 0.49% | | | | | | | Total : | 694.26kb | 669.37kb | 3.59% |

    πŸ“ docs | :octocat: repo | πŸ™‹πŸΎ issues | πŸͺ marketplace

    ~Imgbot - Part of Optimole family

  • 4

    Suddenly not working?

    Great application, really like it. However, it suddenly stopped working for me recently, I don't think I changed anything, I've been giving it the same details (API key and username), any ideas?

  • 5

    Options don't persist after closing the app

    Hey this is a really neat project! It seems however that after you close the app it's resetting the username and api key. I'm on Windows 11 don't know if that matters.