What's Changed

  • Fixed an issue where it would put the wrong value in the error message when the max requests per user are reached. It now will output the correct number and max amount for the user's user level. For example @Username maximum number of songs in queue reached (Vip 3).
  • Fixed an issue where Songify would render as a black window and was unresponsive until opened from the system tray again
  • Fixed an issue where the min required user level would not display correctly in the settings window
  • Fixed an issue where the patchnotes would not show
  • Added the ability to set the amounts of votes for skipping a song
  • Added !voteskip command for regulars, number of votes can be adjusted (Settings -> Integration -> Configure Bot Responses & Commands)
  • Changed phrasing on the Twitch user level from "Everyone" to "Viewer (non vip/sub)" because it caused some confusion
  • Removed the Menu entry "Twitch -> Bot Config -> Configure Bot Responses & Commands" and moved the onClick function to just "Bot Config" MenuItem


  • Fixed output format for twitch not working with requester info ({{requested by {req}}})


  • Added a secondary output format just for Twitch chat. This output will get sent to Twitch chat when the !song command is used.
    • Added {url} parameter to the right-click menu for output format (this adds the Spotify link of the current song)
  • Added Song request user level restriction e.g. only subs and above or only VIPs and above can request songs. You can choose between Everyone, VIP, Subscriber, Moderator, and Broadcaster
  • Added a cooldown to the skip command (5 seconds)
  • Added a new window under File -> Patch Notes. It displays the patch notes for the current and all past versions.
  • Added the ability to set the max song request limit for each user based on the user level. For example, you can now set everyone ( regulars ) to be able to only request 1 song at a time, VIPs 3, subs 5, and so on. The broadcaster has been removed entirely from the limit. Go to Settings -> Songify SR.
  • Added an update screen with patch notes after the app updated
  • Fixed an issue with the skip command (requester could skip everything)
  • Fixed an issue where the position of the window wouldn't be saved correctly
  • Moved error handling to App.cs instead of MainWindow.cs. This way logs should get created even when the app fails to start correctly.


  • Added a !skip command.
    • Broadcaster / Moderators and the person who requested the current song can skip immediately. Regulars will start a vote of 5 to skip the song. Votes will be reset on song change.
    • Added bot responses for the !skip command
  • Added an option to open the queue window on startup
  • Changed the way that the columns are spaced in the queue window
  • Switched old Patreon links to Ko-Fi
  • Bot responses now will be saved
  • Fixed bot response toggles in Settings not being displayed correctly
  • Fixed issues with progress saving
  • Fixed an issue where the config export would open twice
  • Fixed an issue where with foobar it would cut off the output if it has multiple . in it. (#30)
  • Fixed a bug that made it possible to connect to twitch multiple times resulting in duplicate messages and song requests


  • Added a message box that pops up when the software crashes, it can open the log file directory
  • Fixed Progress.txt file save location & related crash


  • Fixed an issue with the config being stored in wrong case format
  • Removed desktop notifications for Twitch disconnect

What's Changed​

  • Added progress bar setup guide for obs by @karimawii in #29
  • Fixed crashes related to Twitch Auto reconnect
  • Fixed different time formats in log files
  • Changed the way settings are written and read (The Theme setting will reset to default, which is the light mode, fixed a typo...)
  • Moved Progressbar related files to a new folder called Progress



md5: 09823632c855b12c588e9cbdcb3b1344
sha1: 2b3957881a021d56bbabb1c05150d99505a12693
sha256: 06ea6a54daa8bbe269c2625c2ea115fe70b245efa2596b09270b9a49f1ae282f


md5: cf06108ed07c3c01a6abe7015bda4a0c
sha1: c4f5a6678eab6398f8b6db7737fc84cac9d62f60
sha256: cfecfbb2d495aa5342be11a6f5baf6a4a03e322c87ce520044c708413997601b

Full Changelog: v1.3.1...v1.3.2
- added {url} parameter to the output tab. This only works with Spotify API and adds the song link.
- added a new output file progress.txt in which the percentage of the progress of the current song is stored. This is useful to make your own progress bar using HTML / js. An example progress.html-file is included and can be used (see the style.css for own styling).
- added auto-reconnect when disconnected from twitch by accident

Telemetry has been removed entirely.

Bot config is now saved to settings file


  • none


  • none


  • Fixed YouTube not working properly (YouTube has to be the first tab in the browser)
  • Fixed VLC not working properly



md5: 22c2845f38b4a8d9f72d77c201847726
sha1: 213c6af0493536d93cfeebcc78db86c629897314
sha256: 935b6530ee7c7cee69dd5c83437bcf8e4cc07f466072905403b70d18cb5cce94


md5: 9f2d6fadc07fdd0ab35384aca24e1094
sha1: 644d91830ae51c53a83e3a13e305d57630b955ef
sha256: f2c585d3a5427bee6f6d0d6eebacfa1b71d961e7abd2cd2b7d37e1541116cc53
  • Added systray icon context menu for Twitch
  • none
  • Fixed a typo in the config file (opening and closing the settings window should fix this)
  • Fixed Twitch Connect / Disconnect buttons not working in other languages than English
  • Fixed an issue that causes Songify to crash when auto-send to chat was active while being disconnected from Twitch
  • Fixed {errormsg} output when using Channel Reward song request
  • Fixed !next command (it was showing Artist - Artist)
  • Fixed VLC displaying "Pause" when scrubbing through the seekbar
  • Fixed VLC not displaying the separator for Artist and Title (#20)
  • Fixed Twitch Channel and Username trailing whitespaces (whitespaces caused some issues, this is to circumvent faulty user input)
  • Fixed output string for desktop and browser players
  • Added try/catch to the write method since it caused a crash when attempting to write the text file on some occasions
  • Removed config save on window close
  • Added config save to SettingsWindow close

md5: 2454e7894bb1ed67795c820e32d0cd8f
sha1: 67adcc2c7353e41d77693b0f063665370a86781f
sha256: 2974a292010ba200e2f4604813dfeca3e1518ae1cf5d6f7f6f31086db5848c57

md5: 05668d2e26d09f1ed68a67a1cf9b2611
sha1: 208a8f6d8a81c0c19b81e36b3b0c8971a1df44bc
sha256: 67471eaaf12bce150704e510294e4540ed
  • Foobar2000 wasn't working, now it is.
  • Auto announce in chat now uses the output string
Why this is the final update on Songify 1.x
This is the final update to Songify 1.x because we want to focus on 2.0 which we want to build from scratch. We do this in order to have an app that is maintainable, sustainable, and extensible. We have a lot of planned features but at this time we don't have any planned release date. Development takes its time, especially if you consider, that Songify is just a free-time project of two friends. If you want to keep up with the development, feel free to join our Discord.

  • Added a selection to the blocked Artists when adding a new one
  • Added an option to set the max song length in minutes
  • Added Edge (Chromium) as supported Browser for Youtube
  • Added Opera Browser as supported Browser for Youtube
  • Added more Bot-Responses
  • Added Bot-Commands
    • !song -> Displays the current song in chat
    • !pos -> Displays the queue positions of the user's song requests
    • !next -> Displays the next song in the queue
  • Added an option to automatically announce the current song in chat when the song changes
  • Added Russian, French and Spanish translations (using deepL)
  • Removed Nightbot support since we now need proper oAuth to access the API. Too much work for 1.x
  • Songify now won't use up 100% of your CPU in certain scenarios
  • SplitOutput now works as intended
  • Improved error logging upon unhandled exception
  • Made Youtube via Chrome significantly better in performance
  • Renamed Youtube (Chrome) and Deezer (Chrome) to Youtube (Browser) and Deezer (Browser). The code automatically detects which browser is used: The first browser found will be used, the order is Chrome -> Edge -> Opera.
  • Changed the way VLC and Foobar getting fetched. There were issues when the name of the file was not in a specific format.
  • Changed SettingsWindow to be wider to fit for all languages
  • The Save-Button in Settings / Spotify is gone (thankfully)
This Version fixes a crash that can occur when the Album Cover is used in OBS and on some rare occasions it just crashes randomly when trying to save / display the album cover. The Cover now gets downloaded to a temporary file and then the old one gets overwritten with the new file. This is a better approach instead of downloading to the same file over and over again because the old way sometimes leaves the albom cover in OBS weirdly artifacted.
  • Autoupdater (Songify now updates automatically!)
  • User-Blacklist. Stop poeple from requesting songs
  • German Translation (more will come soon)
  • Custom Bot-Responses. You can now change Bot-Messages for the following events:
    • Artist is blocked
    • Song is already in queue
    • Max number of songs per user reached
    • Song is longer than 10 minutes (this number is still hardcoded)
    • Error fetching songdata
    • Song added successfully


  • It was possible to run multiple instances of Songify, this is not the case anymore
  • Songify now starts minimized (systray) if its enabled (thanks @SHWotever)
  • As per request we changed the trailing whitespaces to be optional (enabled by default). You can now set the amount of spaces and if they should be added in the first place.
  • Songify no longer stores settings in %localappdata%/Jan_Blomacher. From now on Songify settings will be stored in %localappdata%/Songify.Rocks.
  • Added global exception handling. If Songify crashes on you the log should help us see why!

  • History Window won't crash anymore
  • Changed the way the player selection gets stored, should work without issues now
  • Removing single artists from the blacklist didn't save, it does now.
  • If there were no artists in the blacklist there would still be an empty row in the datagrid, this is also gone now