Releases: sozercan/kaset
v0.9.0
Whatβs New
βοΈ If youβre enjoying this app, please share and star it! β€οΈ You can also support development by buying me a coffee β
π§© Extensions Support
Kaset now supports WebKit Web Extensions, so you can bring your own extensions β like uBlock Origin Lite β into the app (thanks @shantanunautiyal!).
π΅ Playlist Creation & Management
Create, and manage your own playlists directly from Kaset.
ποΈ System-Wide Equalizer
A new 6-band equalizer with presets lets you shape your sound across the whole app (thanks @pukuba!).
π Listening History
A new History view makes it easy to revisit recently played tracks (thanks @pukuba!).
π€ Smarter AI Command Bar
Improved AI routing and queue analysis, plus macOS 26.4 Foundation Models prompt budgeting for faster, more reliable on-device responses.
π€ Artist Page & Lyrics Upgrades
Artist pages now surface Latest Episodes, Singles & EPs, Playlists, Podcasts, and βFans might also likeβ (thanks @buggerman!). Playlist author links and artist profile metadata are richer (thanks @Orkunnnn!), and lyrics gain romanization support for non-Latin scripts (thanks @fllaa!).
π More Languages
Kaset is now localized in French (thanks @itishermann!), Korean (thanks @pukuba!), and Indonesian (thanks @fllaa!).
π AppleScript
New play video AppleScript command for scripting playback (thanks @enkinvsh!).
π Fixes and improvements
- Unified Liked Music view with consistent behavior across the app (thanks @Nacolis!)
- Auto-start playback after the WebView loads, so the first track plays reliably (thanks @pukuba!)
- Queue now advances when manually seeking to the end of a track (thanks @pukuba!)
- Blocked YouTube seek handlers at document start to stop Control Center flicker (thanks @pukuba!)
- Deduplicated search suggestions and kept filters visible for empty results (thanks @imwyvern!)
- Playback WebView stays properly hidden
- Added a top fade to detail pages for a cleaner scroll experience
- Song thumbnails fall back to YouTube thumbnails when artwork is missing (thanks @pukuba!)
- Navigation titles now follow the app language setting (thanks @pukuba!)
- YouTube Music API requests use the configured language (thanks @pukuba!)
v0.8.2
βοΈ If you're enjoying this app, please share and star it! β€οΈ
What's New
π Fixes and improvements
- Liking or unliking a song from any screen now instantly syncs across the Player
Bar, Liked Music list, and context menus β no manual refresh needed - Fixed the What's New sheet layout so the Continue button stays visible at small
window sizes, and removed the duplicate version title - Fixed hover scale effect being clipped at horizontal ScrollView edges
- Fixed playlists with 100+ tracks not fully loading due to incorrect pagination
token priority
New Contributors
v0.8.1
βοΈ If youβre enjoying this app, please share and star it! β€οΈ
What's New
π€ Synced Lyrics
Lyrics now support time-synced playback with the LRCLib provider, making it easier to follow along line by line.
π§ Last.fm Scrobbling
Kaset now supports Last.fm scrobbling
π More Languages
Kaset is now localized in Turkish and Arabic, bringing full translation support to more of the appβs user-facing interface.
π΅ Library and Playback Controls
You can now add artists to your library, and Now Playing controls are configurable so you can choose whether Next and Previous actions are shown.
π Built-in What's New
Kaset now includes an in-house What's New experience powered by GitHub release notes, so new features and improvements are easier to discover after updating.
π Fixes and improvements
- Improved repeat-one queue sync and Next/Previous behavior
- Fixed restored playback timing, launch notifications, and resume handling
- Fixed WebView playlist queue synchronization
- Reduced volume spikes during song transitions and improved handling of delayed YouTube volume resets
- Fixed packaged app accent color lookup and Apple Intelligence toolbar button color in light mode
- Updated the command bar to use Liquid Glass and restored the native macOS minimize shortcut
- Fixed artist top song durations and corrected Go to Artist failures for some home page items
- Migrated the project from Xcode project files to Swift Package Manager, with related build and CI fixes for macOS 26 runners
New Contributors
v0.7.0
βοΈ If youβre enjoying this app, please share and star it! β€οΈ
What's New
πΆ Queue Enhancements
New side panel mode with drag-and-drop reordering, undo/redo for queue changes, "Play Next" and "Add to Queue" context menus across the app, and automatic queue persistence across app restarts (thanks @cacuscacus!)
π Fixes and improvements
- Play/pause state detection now uses the correct WebView signal for reliable status
- Fixed duplicate window appearing when clicking the Dock icon to reopen
- Fixed MainActor context for notification observation preventing potential concurrency issues
New Contributors
- @cacuscacus made their first contribution in #97
v0.6.0
What's New
π Account Switcher
Switch between your personal and brand accounts
π AppleScript Support
Control Kaset from Raycast, Alfred, Shortcuts, or any automation tool with commands like play, pause, next track, set volume, and get player info
π Fixes and improvements
- Auth cookies are now stored in macOS Keychain
- AirPlay now correctly routes audio to selected devices (known limitations)
- Podcast shows can now be added to/removed from library correctly
- Main window now restores properly when video window is open and dock icon is clicked
- Now Playing notifications respect the setting toggle
- Optimized network requests, API caching, and SwiftUI rendering for smoother scrolling and faster load times
- Various concurrency and stability improvements
Installation
Homebrew (recommended)
brew install sozercan/repo/kasetManual Download
- Download
kaset-v0.6.0.dmg - Open the DMG and drag Kaset to Applications
- Remove the quarantine attribute (required for unsigned apps):
xattr -d com.apple.quarantine /Applications/Kaset.app
Verification
SHA256: d45707321b2447f2d6fe55a810a7928d8cbb99721ca1e9e004dde400f8bf03ba
Verify with: shasum -a 256 kaset-v0.6.0.dmg
New Contributors
- @Endiruslan made their first contribution in #82
v0.5.0
What's New
ποΈ Podcasts
Discover podcast shows and episodes, subscribe to shows, and add them to your library
π¬ Videos
Watch music videos and video podcasts
π» Mix & Radio
Play personalized radio when you start a songβautomatically queues similar tracks via "Start Radio" in context menus
π Playback Memory
Option to remember shuffle and repeat settings across app restarts (Settings β General)
π Fixes
Window size now restores properly on relaunch
Waveform animation pauses when audio is paused
Fixed shuffle keyboard shortcut behavior
β€οΈ If youβre enjoying this app, feel free to share it!
Installation
Homebrew (recommended)
brew install sozercan/repo/kasetManual Download
- Download
kaset-v0.5.0.dmg - Open the DMG and drag Kaset to Applications
- Remove the quarantine attribute (required for unsigned apps):
xattr -d com.apple.quarantine /Applications/Kaset.app
Verification
SHA256: 6861607206ed69d030c398a43b3611f6caa248d482551c6b436678ab7a30adef
Verify with: shasum -a 256 kaset-v0.5.0.dmg
v0.4.1
What's New
Playlist Search Filters β Separate filters for "Featured playlists" and "Community playlists"
Floating Panels β Lyrics and Queue now appear as floating liquid glass panels over content
Installation
Homebrew (recommended)
brew tap sozercan/kaset https://github.com/sozercan/kaset
brew install --cask kasetManual Download
- Download
kaset-v0.4.1.dmg - Open the DMG and drag Kaset to Applications
- Remove the quarantine attribute (required for unsigned apps):
xattr -d com.apple.quarantine /Applications/Kaset.app
Verification
SHA256: e63d0d61bb6d0c2c5a61db54fd10606a1816b70e822c867588d0a301a5dd49b1
Verify with: shasum -a 256 kaset-v0.4.1.dmg
v0.4.0
What's New
β¨ New Features
Favorites β Pin your favorite songs, albums, playlists, and artists to the Home screen for quick access
Share β Share music via the native macOS share sheet (right-click β Share)
URL Links β Open songs directly with links like kaset://play?v=VIDEO_ID
Auto-Updates β App now checks for updates automatically via Sparkle
π§ Improvements
Liked Songs β Now loads your full library with infinite scroll
Search β Infinite scroll pagination for search results
Network Status β Shows "No Connection" message when offline
Installation
Homebrew (recommended)
brew tap sozercan/kaset https://github.com/sozercan/kaset
brew install --cask kasetManual Download
- Download
kaset-v0.4.0.dmg - Open the DMG and drag Kaset to Applications
- Remove the quarantine attribute (required for unsigned apps):
xattr -d com.apple.quarantine /Applications/Kaset.app
Verification
SHA256: eb98f09350b034fb7e0f2a047e74c3d773d79f05d18ee7afef792ed5c36985e9
Verify with: shasum -a 256 kaset-v0.4.0.dmg
New Contributors
v0.3.0
What's New
β¨ Apple Intelligence
Natural Language Commands β Ask things like "play some jazz", "shuffle my library", or "add this to queue" using on-device AI
Command Bar (βK) β Spotlight-like interface for quick AI-powered commands
Lyrics Explanations β AI-generated themes, mood analysis, and meaning for song lyrics
π Queue Management
Queue View β See what's playing next in a dedicated panel
Radio Mode β Auto-populates queue with similar songs when you play a track
Queue Controls β Reorder, shuffle, clear, or add songs to your queue
π§ Expanded Explore Section
Charts β Browse top songs and trending music
Moods & Genres β Discover curated playlists by mood (chill, workout, focus) or genre
New Releases β See latest album and single releases
π Lyrics View
View song lyrics while listening
AI-powered mood and theme analysis
π³ Haptic Feedback
Tactile feedback on Force Touch trackpads for player controls and navigation
βοΈ Settings
General Settings β App configuration options
Intelligence Settings β Enable/disable AI features
β¨οΈ New Keyboard Shortcut
βK β Open Command Bar for quick AI commands
Installation
Homebrew (recommended)
brew tap sozercan/kaset https://github.com/sozercan/kaset
brew install --cask kaset --no-quarantineManual Download
- Download
kaset-v0.3.0.dmg - Open the DMG and drag Kaset to Applications
- Remove the quarantine attribute (required for unsigned apps):
xattr -d com.apple.quarantine /Applications/Kaset.app
Verification
SHA256: e2eced2a4c356f7f9622c18ae772c961de9e55f270df9a2de66c51c442d50424
Verify with: shasum -a 256 kaset-v0.3.0.dmg
v0.2.0
What's New
π΅ New Features
Lyrics Panel β View lyrics for the current track in a right sidebar
Liked Music β Browse and play your liked songs from YouTube Music
Top Songs β View all top songs for any artist
AirPlay β Stream audio to AirPlay-compatible devices
π¨ UI Polish
Skeleton loading states with shimmer animations
Dynamic color theming β UI adapts colors based on album artwork
Light mode fixes β Improved appearance in light mode
Shared components β New reusable cards, loading views, and animations
π Security & Stability
App Sandbox enabled for improved security
Fixed Now Playing integration with Control Center and media keys
Fixed concurrency issues for Swift 6 compatibility
π οΈ Infrastructure
Dependabot for automated dependency updates
Improved test infrastructure with mock clients for UI testing
Installation
Homebrew (recommended)
brew tap sozercan/kaset https://github.com/sozercan/kaset
brew install --cask kaset --no-quarantineManual Download
- Download
kaset-v0.2.0.dmg - Open the DMG and drag Kaset to Applications
- Remove the quarantine attribute (required for unsigned apps):
xattr -d com.apple.quarantine /Applications/Kaset.app
Verification
SHA256: 1997ece8ecf7ed565b120efdd978558729f5265190868711bd8b14505aed78af
Verify with: shasum -a 256 kaset-v0.2.0.dmg