Skip to content

Releases: songify-rocks/Songify

v1.8.1

12 Feb 14:09

Choose a tag to compare

🎵 Spotify Fix

  • Fixed an issue where songs were not being added to the selected Spotify playlist.

❤️ Support Songify

If you enjoy using Songify and would like to support the project,
consider becoming a member on Ko-Fi.

Your support helps keep development active and sustainable.

👉 https://ko-fi.com/overcodetv


Songify.zip:
MD5: 29608032432F4EE2D2955916A5112D28
SHA1: 17F74F50B5D4200E18CF7BD8DC871B8DAB6F8C82
SHA256: 62E1D7910874DDDD8C08B96A7A39BA08DDB4DB9EC8FCAFA5B168B4E8683837E8

Songify.exe:
MD5: 2CC868DC2452D630E7121B6277743F30
SHA1: A53C4FF493DF9A5FBA69901F8AF0EB155B1D55AD
SHA256: FF6641404ABA84A7F9073A63ED606C89E8A34F2CBB39231ED0B7A5F05BA6362C

Full Changelog: v1.8.0...v1.8.1

v1.8.0.0

24 Apr 16:58
e6f9218

Choose a tag to compare

🎉 Songify 1.8

Songify 1.8 is our biggest update yet.
Faster, cleaner, more stable and fully modernized under the hood.


⚠️ Important – Action Required After Updating

🔄 Re-link Your Accounts

After updating to 1.8, you must:

  • Re-link your Spotify account
  • Re-link your Twitch account (Only if updating from 1.7.x)

Due to internal changes and new Spotify API requirements, existing connections may not work correctly until reconnected.


⚠️ Important – Spotify API Changes (Feb 11)

Spotify introduced major API restrictions on February 11.

This affects Songify users in the following ways:

  • Spotify Premium is now required for new users
    Without Premium, creating a Spotify Developer App is no longer possible.

  • Only one Spotify Developer App per user is allowed
    Existing apps still work.
    ⚠️ Do NOT delete your existing Spotify Developer App.

  • Spotify’s API restrictions are still evolving
    Some edge cases may not work 100% yet.
    We are continuously improving compatibility based on feedback.

If you experience Spotify-related issues, please report them on GitHub or in Discord.


➕ Added

🍐 Pear (YouTube Music) Support

  • Full support for Pear (formerly YTM Desktop / th-ch)
  • Integrated Pear API
  • Queue synchronization
  • Playback controls: play, pause, skip, voteskip
  • Volume control: vol, vol [0-100]
  • YouTube Data API v3 metadata support
  • Improved YouTube song request parsing and responses
  • Fixed YouTube song request re-ordering issues
  • A guide on how to link Songify with Pear can be found here

🎵 Spotify Improvements

  • More reliable and accurate track detection
  • Faster communication between Songify and Spotify
  • Improved playback state and metadata handling
  • AddOnlyToPlaylist option
  • Song requests now reliably auto-add to Liked Songs
  • songlike can now be used by the requester (if enabled)
  • Better handling of unavailable tracks per market

💬 Smarter Twitch Song Requests

  • Bits support for song requests
  • Alias support for commands
  • New option: Skip only non-requested songs
  • Configurable skip vote count
  • Full skip poll support
  • Channel reward integration for skip polls
  • Improved permission detection:
    • Mods
    • VIPs
    • Followers
    • Tier 1–3 subscribers
  • Improved channel point handling
  • !togglesr command added

🔌 Twitch System Rewrite (Major Stability Upgrade)

  • Stronger and more stable chat connection
  • EventSub support
  • Better error recovery
  • Cleaner internal logic
  • More predictable command handling
  • Improved role and permission detection

☁️ Cloud Settings Enhancements

  • Improved sync between local and cloud settings
  • Cloud vs. local comparison tools
  • Better UI feedback
  • Improved multi-machine experience

(Cloud Sync requires Premium, read more here)


🖥 Windows Playback API Support

  • Detect “what’s playing” across supported Windows music players
  • Improved now-playing detection beyond Spotify and Pear

🌍 Localization Overhaul

  • Complete localization system rewrite
  • Unified XAML localization via Loc MarkupExtension
  • Cleaner resource structure
  • Improved fallback handling

New or updated translations:

  • Dutch
  • French
  • Spanish
  • Italian
  • Portuguese (PT & BR)
  • Belarusian
  • German
  • Polish
  • Russian

🧩 UI & Quality of Life

  • Cleaner and more responsive Settings window
  • Improved Refund tab layout
  • Improved command list and permission UI
  • Updated tooltips and UI hints
  • Added deep-link handling
  • About window now shows third-party libraries
  • More consistent theming
  • Cleaner error and warning messages

🔄 Changed

  • Replaced legacy YTMDesktop integration with Pear API
  • Refactored TwitchHandler for clarity and long-term stability
  • Refactored logging system for better diagnostics
  • Improved configuration and settings management
  • Improved fuzzy matching and caching logic
  • Improved reward handling
  • Improved stream online status checks

🛠 Fixed

  • Fixed incorrect ordering of YouTube song request results (thanks @NaGeL182)
  • Fixed !ssr not working with Pear
  • Fixed “Allow only songs from specific playlist” not working (#170)
  • Fixed !bansong permission issue (#164, #153) by @folle in #153
  • Fixed stream online status check (#166)
  • Fixed voteskip count resetting to 5
  • Fixed null reference in ImportToken
  • Fixed rare crashes and null-reference issues
  • Fixed typos and inconsistent UI states
  • Improved Twitch login and token import handling
  • Improved Spotify and Twitch recovery (fewer “stuck state” issues)

❌ Removed

  • Removed legacy YTMDesktop integration
  • Removed outdated services and APIs
  • Removed unused components and dependencies
  • Cleaned up old abstraction layers

🌐 New: Redesigned Songify Website

We are launching the new Songify website.

It includes:

  • Queue Display
  • Status Page
  • FAQ Section
  • Widgets (Free & Premium)
  • Twitch Login
  • And more

https://songify.rocks


🚀 Stability

Songify 1.8 has gone through extensive beta testing and is now considered stable enough for daily use. Though we had to rush this update due to the changes Spotify introduced to their API.

Due to Spotify’s recent API changes, we will continue refining compatibility in upcoming updates.

If you encounter issues, please report them on GitHub or in Discord.


❤️ Support Songify

If you enjoy using Songify and would like to support the project,
consider becoming a member on Ko-Fi.

Your support helps keep development active and sustainable.

👉 https://songify.rocks


Checksums:
Songify.zip:
MD5: B827EF5152B3253D3006A875AE65D70A
SHA1: 1AFC4052A993BB325D1F93AA9574D80F9F6B629C
SHA256: 0830BF46ECDA74D4F7F29BE61F69F5393C8DA52DC373C5CCF76F61D79388A421

Songify.exe:
MD5: 2ABDC59740EA153EE8D271F0558CF795
SHA1: A2293F417B4BF2579520E0B57E926FEEA086FAB8
SHA256: 465582E135069260387047BF8782E252B4E7DEA5F62CFB2FB12F2C1683FB612E

Full Changelog: v1.7.2.0...v1.8.0

v1.7.1.0

20 Apr 15:24

Choose a tag to compare

Songify v1.7.1.0

New Features

  • Now Playing Support added for th-ch/youtube-music.
    • Setup Instructions:
      • In Youtube Music Desktop Player
        1. Click on Plugins.
        2. Click on API Server (BETA).
        3. Ensure the PORT is set to 26538 (default).
        4. Set Authorization Strategy to No Authorization.
  • Added !bansong command:
    • Blocks the currently playing song and skips it.
  • Enhanced !pos command with {ttp}:
    • Example: @{user} {songs}{pos} {song} {ttp}{/songs}.

Improvements

  • Removed outdated prompts.

Bug Fixes

  • Fixed "unlimited song requests" being enabled all the time.
  • Resolved a crash when setting default values for commands.

Full Changelog: v1.7.0.0...v1.7.1.0

If you enjoy using Songify and want to support its continued development, consider donating.
ko-fi

Songify.zip:
MD5: 9E003C7E10545E52963C9BCCB35EF63C
SHA1: 49F0878A14EEB0F034437EC8B4BCCDC3CA6FF20C
SHA256: 682511A7400F278085DE6F4479B555BB3C8A1E23274EC8AF35C3F1D27AC611AB

Songify.exe:
MD5: F75D51D66606007C762FDB2525CD6385
SHA1: 20C9F2C0AF6BA6B17A398BBBDCD389F166DBA2DB
SHA256: 1CBED881A42875774DEE761171EF502ACBA251BBDD668B4282DE559E8FC22725

v1.7.0.0

11 Apr 21:37

Choose a tag to compare

🎉 Songify 1.7.0 – Official Release Notes

🚨Please read the patch notes thoroughly and make sure you understand them before making support requests.🚨

🚨 Important: Please log out and back into Twitch to refresh your permissions.
🚨 Important: You have to reconfigure your commands manually.
🚨 Important: If you encounter issues with Spotify's new API changes, please change the drop down in Settings -> Spotify to "127.0.0.1"


🔍 What’s New

  • 🌐 WebSocket Command Support
    Control Songify externally with a powerful WebSocket API.
    📄 View WebSocket Documentation

  • ⚠️ "Ignore and Continue" Offline Mode
    Start Songify without an internet connection using a new option in the startup dialog.

  • Time-to-Play Estimation ({ttp})
    The {ttp} placeholder shows an estimated time until a requested song will play (in mm:ss format).

  • 🛠 Redesigned Command System (Breaking Change)
    The Commands, Responses, and Rewards sections have been completely redesigned for easier management.

    • All command settings are now stored in TwitchCommands.yaml
    • You will need to reconfigure your commands manually after updating
  • 🎵 YouTube Music Desktop & Browser Extension Support

    • Full integration with YouTube Music Desktop App
      • A guide can be found here
    • Initial support for the upcoming Songify Browser Extension (awaiting approval from Chrome Web Store)
  • 🖼️ Requester Profile Picture Storage
    Saves the current requester’s profile image as requester.png

  • 👤 Viewer List Window
    Displays all active Twitch chat users along with their SR status, user level, and sub tier. Refreshes every 30 seconds.

  • 🏆 Expanded User Level Handling
    Supports Twitch subscriber tiers (1, 2, 3).
    🔁 Requires re-linking your Twitch account due to updated scopes.

  • 🔄 Single Instance Handling
    Launching a second instance will now bring the existing window to the foreground if minimized or hidden.


🔧 Full Changelog

⭐ New Features

✅ WebSocket Command Support

Supports external commands:
queue_add, vol_set, skip, next, play, pause, play_pause, send_to_chat, block_song, block_artist, block_all_artists, block_user, stop_sr_reward, vol_up, vol_down

  • Default requester is set to "" if not provided.

🚫 “Ignore and Continue” Button

Use Songify offline by skipping the internet check on startup.

⏳ Time-to-Play ({ttp})

  • Estimate displayed in song request replies.
  • Reflects the current queue length and playback status.

🛠 Redesigned Command System

  • New UI for Commands, Responses, and Rewards
  • Commands now stored in TwitchCommands.yaml
  • ⚠️ You must recreate your command setup manually

🖼 Requester Profile Picture

  • Automatically saves a requester.png file for the current song requester.

👥 Viewer List

  • View all Twitch chat users, including their roles and request statuses.

🧠 Smart Instance Behavior

  • Prevents multiple Songify instances from running simultaneously.
  • Automatically brings the original window into focus.

🔁 Improvements

🎵 Song Request Logic

  • Improved handling of blocked songs, explicit content, and duplicates.
  • More reliable fallback logic when the queue window is closed.

📁 Output File Behavior

  • Output files are now cleared when using the “Clear Pause” option.

🔧 Async & Error Handling

  • Improved async methods for better performance and stability.
  • Refactored error handling to reduce app crashes and provide better debug output.

🔗 Spotify Auth Redirects

  • Updated internal redirect URI to http://127.0.0.1 per Spotify’s latest requirements.
    Read more

🐞 Bug Fixes

  • Prevented crash when currSong was null
  • Fixed a rare crash during song requests
  • Fixed issue where Songify starts minimized or off-screen
  • Resolved Twitch reward sync UI display issues
  • Fixed translation formatting and accuracy across languages
  • Fixed Twitch command crashes caused by outdated scopes
  • Resolved crashes related to Windows notifications
  • Fixed display issues with token expiration time
  • Logout and re-login now work without needing to restart the app
  • Added refresh button to Twitch settings
  • Token expiration is now shown for both main and bot accounts

🛠 Additional Enhancements

  • 🎧 Spotify Credentials Now Required
    You must use your own Spotify API credentials.
    🎓 Setup Guide

  • 🌐 Improved Internet & Stream Checks

    • Internet check is now non-blocking — Songify stays open and retries automatically
    • Stream status check now refreshes every 5 seconds
  • 🖥 UI Upgrades

    • “Get Beta Updates” option moved to Settings → System
    • Removed outdated “Hide user info” setting

🌍 Language Support

  • Polished translations across all supported languages
  • Language switching now works without requiring a restart

Full Changelog: v1.6.7.2...v1.7.0.0

This was a major update that took a significant amount of time and effort to develop.
If you enjoy using Songify and want to support its continued development, consider donating.
ko-fi

Songify.zip:
MD5: FFE8597034A2D46B3B91BD01A2843A4C
SHA1: 91A963DB292C8EFFF32519AC9E817EE05D2F88BD
SHA256: 4E4F58DD82A19FE5F562D475FEF6EC5DC1A11AAC442B4D86EE63415F1A87B6F5

Songify.exe:
MD5: 53CB1AE21E5FDD755F935EF202B9D9F2
SHA1: B0471C92D69EB36037FFFF148291EAE71AC681FB
SHA256: 06A9AD50ABCC60E2941C06B6C5CF7B769B508D02FB1CB3DF3A5F5165B27E2508

v1.6.7.2

19 Nov 20:07

Choose a tag to compare

Fixes:

  • Fix crash on Browser and Desktop Players: Using browser based players or dekstop players caused a crash on fetching that is now resolved.
  • i18n: Minor fixes in translations

Full Changelog: v1.6.7.1...v1.6.7.2

ko-fi

Songify.zip:
MD5: D2F6E3C96240E2242F556920E1FA7EA2
SHA1: AE00F4E6ADAC0D56ED477E81CF4C77FD7A709D1F
SHA256: 83CDB9A5B13BA9394FD1E2E2FBF0837E1EB3CDAE8CAB207090327AA8E8E9BC41

Songify.exe:
MD5: 52328A0835AF57577C7A266ECAEF48C5
SHA1: 0C4588CB6DF2262B8216A8B352D0196194D1434D
SHA256: 00CB490E20EF8298FB9409CDAA3F468D3A2AA47B7455790FB3423B1903BB7CF4

v1.6.7.1

19 Nov 06:08

Choose a tag to compare

Fixes:

  • Fix for local files: Local songs are now detected properly.

Full Changelog: v1.6.7.0...v1.6.7.1

ko-fi

Songify.zip:
MD5: 115AE658094E8BDE3CCB0DAC994D781A
SHA1: B5BBC20649CF617EBFF87D9267F790D04B00038C
SHA256: A5E2B476A48470D857B9715413799745BA39A04AED87571CBC680D2D51F32489

Songify.exe:
MD5: 152B28F963B71A7372784A77D9259F6B
SHA1: 9CEDA7410A7372AF8E6B1A87C135A9A7EC642133
SHA256: D401B80538A8DD25C7DB3393349AAB2A00166A038ED227F52A721D4EAE8B8E17

v1.6.7.0

18 Nov 14:07

Choose a tag to compare

New Features:

  • Canvas Support: Added support for displaying Canvas (if available).
  • Album Cover Retention: Added an option to retain the album cover when "clear everything" is selected in the pause options.
  • Per-User Cooldown for !ssr: Introduced a setting for a per-user cooldown on the !ssr command (Settings -> SongRequest).
    • Added a custom response option for per-user cooldown (Settings -> Responses).
  • Follower User Level: Introduced Follower as a new user level. This requires re-logging with Twitch to enable necessary scopes.
    • Enable Follower as an allowed user level in Settings -> SongRequest.
    • Configure the maximum number of song requests Follower users can have in the queue.
  • New Commands: Added !bansong command for moderators and broadcasters to skip the current song and add it to the blocked songs list.
  • Spotify "Liked Songs" Playlist: Enabled support for Spotify’s "Liked Songs" playlist as the liked songs playlist.
    Screenshot
  • Custom Queue Trigger: Added a custom trigger option for the !queue command.
  • Spotify Legacy Pause Options: Added custom pause options.

Changes:

  • Improved Spotify Search Encoding: Enhanced Spotify search query encoding to yield better search results.
  • Expanded Command Flexibility: Most commands now accept string parameters where applicable, allowing for more detailed and flexible command use.
  • Spotify API Connection for Legacy Mode: The Spotify API now automatically connects when Spotify Legacy mode is selected, improving integration and compatibility.

Fixes:

  • Twitch Login Crash: Resolved a crash caused by an issue with the salt value during Twitch login.
  • Auto-Start Connection Issue: Fixed a crash that occurred when Songify was set to auto-start without internet connectivity.
  • Twitch Follow Check Crash: Fixed a crash that occurred during Twitch message handling when checking if a chatter is following. This requires re-logging with Twitch to enable necessary scopes.
  • Typos: Corrected several typos across the application.

Languages:

  • New Language Added: Added support for Belarusian.
  • Translation Improvements: Updated and corrected translations across various languages.

Full Changelog: v1.6.6.0...v1.6.7.0

ko-fi

Checksums:

Songify.zip:
MD5: C0F9F32B60561E1D2A662E55DE5D222E
SHA1: 20B665770129D8858BB17C7D5760C60BACFB0B0D
SHA256: E94A7F07612BE6E4EAED7DEE486E222C00E5A579E2A41AF9890D02A5B788C78F

Songify.exe:
MD5: D0FA035B37CDC2D918B0D6A4601CC1BF
SHA1: F7B71EF8A310F53170E452371FFD78FB348FC945
SHA256: 50F5D97D3233B334443DB202A8E3643635521AE3CFCD9D77F1A3CBDD9310D13C

v1.6.6.0

03 Oct 10:25

Choose a tag to compare

Patchnotes 1.6.6

New Features:

  • Added new app icon for beta version.
  • Beta indicator included in the window title.
  • Introduced Spotify controls in the queue window.
  • Added "Like" and "Skip" actions to the queue window.
  • Public Service Announcements (PSAs):
    • PSAs can now be marked as read.
    • High-severity PSAs trigger a Windows notification.
  • Improved !queue command handling:
    • The command can now be toggled on/off in the commands section.
  • Added a prompt to clarify that clicking "+" is required to add a channel reward to the list of enabled song request rewards.
  • Introduced a skip button for each song in the queue window, allowing users to mark songs to be skipped.
  • Updated !remove command to accept a username argument so mods can remove song requests by specific users. It will always remove the latest request from that user, with the syntax !remove @user or !remove user (#123).

Changes:

  • Twitch autoconnect is now enabled by default.

Bug Fixes:

  • Fixed YouTube song fetching issues.
  • Corrected the !queue command functionality so it works even when the queue window is closed.
  • Fixed local songs being fetched correctly using the Spotify API.
  • Fixed artist/title splitting on desktop players when containing " - " by @kinsi55 in #119.
  • Fixed web server responses not including the playlist.
  • Corrected the "IsInLikedPlaylist" response always returning false in web server responses.

New Contributors

Full Changelog: v1.6.5.3...v1.6.6.0

ko-fi

Checksums:

Zipfile

md5: 39f99c107b910f525a11c98e1fb7239b
sha1: 806550a50119f011717459082fbf5112f116e235
sha256: 8984830748cb10ce76dcf9d838acd386bd9408870315d3e08110496a7632892f

Songify.exe

md5: a1ab378fe79a08a6c3fe72e346762576
sha1: ffaa8dc0660ee8677529a8800c66fb8a42ae1d62
sha256: ee88abebcd214c383a3adfc0607781bb4189e42ec7731bee2fa8baeeb8714342

v1.6.5.3

01 Sep 19:33

Choose a tag to compare

New Features

  • You can now edit the URL for web services directly in the AppConfig.yaml file. If any issues arise, users can adjust the settings themselves. We now offer three mirrors for the Songify web services:
    • songify.rocks
    • songify.overcode.tv
    • songify.bloemacher.com
  • Introduced a notification system that fetches data from our API. Users who aren't on Discord will still receive notifications about issues.
  • Added "Check For Updates" in the File menu

Bug Fixes

  • Resolved the updater issue (apologies for the inconvenience).
  • Fixed the issue with the Pause Text not being sent to the API and Widget.

Full Changelog: v1.6.5.2...v1.6.5.3

Checksums:

Zipfile

md5: 90ab6da27f9dd92d8aaa918d17509813
sha1: 9f8e5e98b3658e1a3f529002b4f744582b750535
sha256: 88c6f7f646bad664f876ae5034159f4cd7019e29143923dfc90338b0c74ad49d

Songify.exe

md5: c84be36299a6df3aa2215759b2690fab
sha1: 15839b37dff97ce999353f7ba0039781c90ed7c9
sha256: 3666fc812628a933be715872738678cecf149686a0d8589a4f497509138ee64d

v1.6.5.2

31 Aug 07:48

Choose a tag to compare

Additions

  • Made the URL which gets used to check for updates and Spotify Authentication to be editable in the AppConfig.yaml file. This way users can change it if something breaks again
  • The Settings Window now does not block the main window anymore
  • Changed all URLs to another working host

Bug Fixes:

  • Fixed Queue Window starting with a font fize of 2 (default should be 12)

Full Changelog: v1.6.5...v1.6.5.2

ko-fi

Checksums:

Zipfile

md5: 148e60f329676e86290ce36fb76be47a
sha1: bd3a73cd12b7158b5ed9838b22a76d19b8adbbea
sha256: f3f667e0bc828d96b40d3986c58fbca2628981b1f73cb5b07da714aebcef7cdb

Songify.exe

md5: f7a5f3b8052b9e58a7c867dc87573f57
sha1: 23899c3b5221a60ec22a3c1a2e172821dd521c3c
sha256: dd057c5e18f73b309c09fe629d3d3e51145147411e7574c2adfb0b2dc40a6421