spotube

🎧 Open source Spotify client that doesn't require Premium nor uses Electron! Available for both desktop & mobile!

OTHER License

Stars
25.5K
Committers
77

Bot releases are hidden (Show)

spotube - v2.7.0

Published by KRTirtho over 1 year ago

Happy Holi 🎨🎉

Highlights

  • ✨Playlist Queue support (add/remove track/playlist to running queue)✨
  • ✨Public Cache Server where already Spotify to YouTube converted tracks are available with ranking✨
  • Personalized section with recommended tracks and new release of following artists
  • Official Spotify Lyrics provider (most accurate lyrics ever, thanks to @RaptaG)
  • Lyric text zoom-in and zoom-out support
  • Synced Lyric time delay/ahead-of-time support
  • Search and Filtering support on
    • Genre Playlists
    • Playlists & Albums Tracks
    • User Library playlists, albums, artists
    • Local tracks
  • 🔥Finally, a new Logo design🔥

Features

  • add or remove track, playlist or album to queue support (b8f3493)
  • basic command line argument support (025c1ae)
  • black list artist or track (947c143)
  • bring pre download on desktop, disable pre download for long videos (1d82bb0)
  • category/genre filter (1dfec05)
  • centralized icon collection with new icon set and nav bar labels hidden (e7acb9e)
  • compact search bar for genres and user_local_tracks page (c343ccc)
  • compatibility with fl-query nextPage method change (7617439)
  • configure pocketbase, generate dart types, update playback to use server instead of hive cache (ad90c11)
  • failsafe pocketbase requests, removal of unneeded preferences options & vertical playbutton actions (d68d150)
  • home: personalized section (9080441)
  • individual shuffle and repeat/loop button of player (f79223c)
  • lyrics: use official spotify API for fetching lyrics and add zoom controls (10d0660)
  • mobile: pull to refresh support in all refreshable list views (9f959ce)
  • new logo and compact search in playlist/album in mobile (dc96cb3)
  • search/filter tracks inside playlist or album (a06cd0d)
  • show snackbar on adding playlist or tracks to queue (6bc1d32)
  • theme: use material3 monet for colors and remove background color preference (60ede5f)
  • use catcher to handle exceptions (84d94b0)
  • use typed assets instead of hard coded paths (59561ab)
  • user local tracks searchbar (e7f3f4e)
  • user-library: filtering support for user albums and user artists (0b58155)
  • user-library: search for user playlists (af4d56f)

Bug Fixes

  • about: license text hidden in the bottom of smaller screen devices (e158dd0)
  • about: wrong link of License (a4a7f1a)
  • genre and sidebar user logo not loading (710f172)
  • lyrics modal sheet out of safe area so use 80% of screen height instead of full (3db28f4)
  • lyrics not changing on track change (c809d2d)
  • lyrics not refetching when tracked changed while being in another page and sidebar user avatar not showing on startup (bd12675)
  • macOS logo placement (c6a5d5f)
  • mobile track collection search bar position and page_window_title_bar exception on mobile platforms (d0aaa97)
  • play_overlay: show progress indicator on song loading (7803a48)
  • playback: not skipping track's sponsorblock segments (60a5847)
  • playbutton card play state not changing (ee46d09)
  • playbutton_card: play and add to queue needs 2 clicks work (bdd7098)
  • playbutton_card: play and non play state correction (b327ffb)
  • playbutton_card: title text overflow (39ee0a9)
  • playbutton: playing state is not updating when playlist is actually playing (9bad8c9)
  • player_queue: large clear button and macos exception (0e43504)
  • playlist_queue: load method not preserving the active track before filtering blacklisted tracks (42b3e11)
  • pre downloading not working properly, audio service circular deps and sibling not loading for backend track (3ccb525)
  • search track play button isn't working (0751f5e)
  • search: grey screen, only tracks update on new search string, playlists,albums,artists show up before hitting return/submit (a774817)
  • search: has to submit twice for search results (f5dc76a)
  • titlebar maximize+restore button not working and less responsive title bar buttons (8a6ba3b)
  • track_collection_view: hide search bar when sliver is collapsed (3d6d244)
  • track_tile: cannot see track index above 99 (78b3273)
  • track_tile: track action popup not showing on narrow screens (0c54f2d)
  • ui: scaffold exception in fluent_ui (8ce2192)
  • use chosen market for new release (c6bf9b6)

What's Changed

Full Changelog: https://github.com/KRTirtho/spotube/compare/v2.6.0...v2.7.0

spotube - Nightly Builds (Continious)

Published by KRTirtho over 1 year ago

Nightly release includes newest features but may contain bugs

It is preferred to use the stable version unless you know what you're doing

spotube - v2.6.0

Published by KRTirtho almost 2 years ago

Highlights

Spotube has become the first Flutter app, that has a platform specific UI or mimics Platform specific design
It was achieved using the platform_ui plugin

  • 🎁 Platform Specific UI design, animations, typography and experience 🎁
  • Override current platform's UI with another one's (it's crazy but fun)
  • Track source change support. Change the currently playing track's source from multiple YouTube results
  • Shuffle and play any playlists and albums
  • Add Selected tracks to multiple playlists
  • Fixed Authentication Token not updating when expired
  • More optimistic UI

Features 🎉

  • add selected tracks to playlists, optimistic playlist remove track (3386dac)
  • added shuffle button in playlist and album section (1fad95f)
  • android-playback: option to download track bytes and play instead of Streaming (dcc8ba5)
  • change default platform option and platform specific back button (36c5e02)
  • dialog logo for macos, settings more width for country picker (5e96913)
  • initial platform_ui integration (9eee573)
  • libadwaita theming, track tile and PlayButtonCard play button icon fix (e795e23)
  • lyrics: tabs for both synced and static lyrics #182 (6b6907a)
  • new refined about page, update checker only check for same update channel (4cadfa9)
  • pause track when seeking forward/back and keep audio session alive when paused/interrupted (bc8a04e)
  • platform bottom navigation bar add (ff14469)
  • platform slider and progress indicator integration (46b00ba)
  • platform title bar buttons add (54048cb)
  • playback: change current track youtube source panel and tooltips for player icon buttons (4b21cc8)
  • Player and Playbutton theme respect to platform (512446d)
  • player queue and sibling tracks platform decoration (39a7794)
  • PlayerView: shortcut button for opening lyrics #273 (1d4847a)
  • rename files to snake_case and reorganize folder structure (7c25e1c)
  • replace all types of buttons with platform buttons (69739b4)
  • rpm packaging support (067e9ac)
  • search: infinite scroll for tracks, artists, playlists and albums (e6761a6)
  • set platform to default platform on start up (472da6b)
  • shuffle keep playing track at top, linux title bar drag no working (1223cf2)
  • sidebar download count and proper progress color in playbutton (a10bc5b)
  • static shimmer for track tile, playbutton card and track tile (3ed8b0f)
  • tablet mode navigation bar & windows semi transparent bg, (3282370)
  • title_bar: platform specific title bar (e659e3c)
  • titlebar complete compatibility, platform specific login, library tabbar in titlebar (b3c27d1)
  • use platform checkbox (2211505)
  • window blur effect add (b0db5e7)

Bug Fixes 🐛

  • ArtistCard: linux shadow (c186881)
  • auth: refresh access token timer not working (b3ac5ca)
  • bottom navigation bar settings tile not active when selected (43557e4)
  • dialog logo in android, lyrics visible timer adjust button (3c6803b)
  • heart button showing when not logged in, wrong login redirect (4dc26af)
  • horizontal infinite lists doesn't fill the screen (69995be)
  • ios dialog action buttons, local tracks crashing app, shimmer color and android wrong status bar color (90c1200)
  • login: not working in android in Brazil or Ukraine regions (0b79a11)
  • macos: black text in dark mode (fb9c0e4)
  • macos: white text color in dark mode, text field white background (e086b52)
  • mobile: SafeArea bugs and back button color (a8330ef)
  • null exception in themes (9465d92)
  • platform_ui local path (00d0d38)
  • player view artist link when local playlist is playing, lyric delay adjust button alignment (ee5c417)
  • remove windows background (6942964)
  • search field ios dark icon , lyrics tabbar ios background color (be56ad4)
  • settings Title alignment and play button card ripple effect in other platforms (3b6bf27)
  • shuffle play logic (65cad07)
  • small minwidth of window in desktop, linux wrong light theme accent color, search field transparent background (5b0e22c)
  • tooltips of menu and adaptive pop up menu (261aaf1)
  • update download dialog blocking the UI (3925f74)
  • user playlists not updating after creating/deleting, artist follow not updating after follow/unfollow (6cc2a18)
  • windows: windows global title bar (bd18f19)

What's Changed

New Contributors

Full Changelog: https://github.com/KRTirtho/spotube/compare/v2.5.0...v2.6.0

spotube - v2.5.0

Published by KRTirtho about 2 years ago

Highlights

  • 🔥 New Authentication flow that uses WebView and only requires Email and Password to Login in Android 🔥
  • Support for Nested Routes. Now, Sidebar/BottomBar never disappears
  • Play/Pause track on keyboard Spacebar, Seek position on keyboard left/right
  • Scrolling is smoother than ever [thanks to fl_query and Waypoint]
  • Replace or Skip downloading all already downloaded tracks
  • Sort tracks in Playlist, Album and Local Tracks
  • macOS correction of download path

Features 🎉

  • animated transition of root PageWindowTitleBar (ff35e06)
  • auth: new authentication flow using cookies and webview in android (756b910)
  • downloader: replace /skip all choice for downloaded tracks (88d7ce5)
  • implemented go_route shell/nested route (3e498a4)
  • keyboard shortcuts: play/pause on space, seek position on left/right (2734454)
  • keyboard-shortcuts: home sidebar tab navigation and close app (8f258e7)
  • smoother list using fl_query and waypoint (c77b0e1)
  • sort tracks in playlist, album and local tracks (cb4bd25)
  • use of smaller sized images in TrackTile (0ca97b4)
  • volume slider mouse scroll and preference for Rotating Album Art #255 (edb6f3c)

Bug Fixes 🐛

  • android: file_picker and permission_handler failure for sdk < 33 (139d4dc)
  • cached local track is fetched from network (abf4a57)
  • categories not showing for oauth exception (4df917e)
  • desktop: maximized window size is stored and window maximized state doesn't persist (91d5d10)
  • local audio doesn't get refreshed after getting permission (618c6da)
  • no appropriate output when playlist is empty #201 (dbb81de)
  • PlayerOverlay not hiding when not playing and unneeded bottom space in TrackTableView (0ebac05)
  • web: not building due to metadata_god ffi (1191bf2)

Contributions

New Contributors

Full Changelog: https://github.com/KRTirtho/spotube/compare/v2.4.1...v2.5.0

spotube - v2.4.1

Published by KRTirtho about 2 years ago

Improvement📈

  • macOS audio metadata tags support (5866b0f)
  • Search page horizontal swipe to scroll support for Desktop platform (d5ff927)

Bug Fixes🐛

  • SpotubeMarqueeText used in ArtistCard crashes the app (4279541)
  • Adaptive UI not working correctly fix by providing an overriding option (8c7adde)
  • Local Tracks throwing exception when downloadLocation is empty (1a3556d)

Full Changelog: https://github.com/KRTirtho/spotube/compare/v2.4.0...v2.4.1

spotube - v2.4.0

Published by KRTirtho about 2 years ago

New🎉

  • 🔥Local Track Player with proper audio metadata support🔥
  • 🔥Full playlist/album download🔥
  • Repeat one track
  • Configurable download location
  • 🔥Download track with proper metadata or audio-tags🔥
  • 🔥Skip non-music segment using SponsorBlock toggle🔥
  • Pre-search next track when current track is above 70% progress
  • TrackTile more options are now adaptive
  • Cached window size

Reading and writing tag isn't yet supported on MacOS

Improvement📈

  • 🔥Adaptive Settings options with categories🔥 (@Demizo #192)
  • Partial Marquee text animation for lower GPU usage
  • Adaptive Text in various part of the application
  • PlaylistView, AlbumView track playbutton behavior improvement
  • Sidebar long username fade (@Demizo #190)
  • Placeholder for empty playlist/album/user images instead of dicebear images
  • Synced lyrics animated text
  • Linux: OS Media Control now updates the track metadata in

Bug Fixes🐛

  • No settings icon in larger screen displays
  • Mobile volume not set to max
  • Desktop volume slider is set to 0 initially
  • Player overlay flickering at random
  • Artist card overflows in smaller displays
  • Shuffle button gets stuck when another playlist/album is played

Generous Contributions (PRs)

New Contributors

Full Changelog: https://github.com/KRTirtho/spotube/compare/v2.3.0...v2.4.0

spotube - v2.3.0

Published by KRTirtho over 2 years ago

New 🎉

  • Playback Cache Support. So unfinished playlist and tracks remains cached & starts automatically when application is launched again
  • 🌟Login Screen guided tutorial about how to obtain Client ID & Client Secret🌟
  • Signed Android Application so now longer need to uninstall the old version for installing the new one
  • 🔥OS Media controls for Linux. Keyboard media keys now work in Linux🔥
  • 🔥New better, consistent & predictable Audio engine with proper event firing support🔥 (https://github.com/KRTirtho/spotube/pull/131)
  • Custom Lyrics delay time. Can be used to delay negative amount of time too
  • Playback Queue View support. Currently playing tracks or playlist can be viewed or changed from it or for doing other actions too (https://github.com/KRTirtho/spotube/issues/126)
  • Android SeekBar support in Notification Panel & Lock Screen
  • 🔥New Blur background design adapted to multiple components including Floating Player, Player View & Lyrics Tab🔥
  • New HighContrast Color Scheme addition which reduces battery consumption on OLED or AMOLED display devices (https://github.com/KRTirtho/spotube/issues/137)

Improved 📈

  • Loading screens & animations. Now uses Skeleton Loading
  • Playlist & Album Pages now show Album Art & extra metadata as Header with vibrant gradient background in a Sliver
  • Playback is now more consistent & the API is simpler. Also its the single source of truth for AudioPlayback instead of the AudioServiceHandler
  • Android Statusbar background color is now adaptive & less glitchy
  • Home Genre playlists can be scrolled horizontally by dragging with mouse even in Desktop edition
  • Track match Cache support for previously played tracks. This dramatically reduces track change latency & load on the YouTube search engine too

Bug Fixes 🐛

What's Changed

New Contributors

Full Changelog: https://github.com/KRTirtho/spotube/compare/v2.2.1...v2.3.0

spotube - v2.2.1

Published by KRTirtho over 2 years ago

Improved 📈

  • Page transitions defaulted to material you design

Bug fixes 🐛

  • Mini Player flickering on random state updates
  • Track More Options not showing when not logged in
  • Wrong link to Client ID & Client Secret tutorial in Login page
  • Changing preferences in Settings resets the entire Playback

Full Changelog: https://github.com/KRTirtho/spotube/compare/v2.2.0...v2.2.1

spotube - v2.2.0

Published by KRTirtho over 2 years ago

New 🎉

  • Update checker
  • Share options for playlists & track
  • Android Skip to Next/Previous track from notification/lockscreen (https://github.com/KRTirtho/spotube/issues/91)
  • 🔥Custom Accent Color Scheme support (Dark + Light)🔥
  • 🔥Custom Background Color Scheme support (Dark + Light)🔥
  • 🔥Material 3 Design Language and Flutter 3.0🔥
  • User customizable Audio Quality Option
  • User customizable Track Matching Algorithm Option
  • Caching in Playlists, Album, Search, Playlist Categories, Artist Profile & Lyrics
  • M1 Mac support via MacOS Universal Binary (untested) (https://github.com/KRTirtho/spotube/pull/87)

Improved 📈

  • Authentication is now persistent (no more re-login)
  • Settings Page. Shows application details in About Dialog
  • Playlist Create Dialog Scrollable

Bug fixes 🐛

Full Changelog: https://github.com/KRTirtho/spotube/compare/v2.1.0...v2.2.0

spotube - v2.1.0

Published by KRTirtho over 2 years ago

New 🎉

  • 🔥Synced Lyrics (with fallback genius lyrics)🔥
  • Playlist create/delete
  • Add/Remove tracks to own playlists
  • Custom YouTube track search term template
  • Downloading lyrics along with a track (can be toggled)
  • Customize Marketplace location

Improved 📈

  • Spotify track to youtube track algorithm
  • Genius lyrics matching algorithm
  • Download track. Checks if already exists & replaces on user command
  • Wide screen responsiveness & adaptation
  • Bigger Title display (replaced word-break with Marquee Text for better visibility) (https://github.com/KRTirtho/spotube/pull/47)

Bug fixes 🐛

New Contributors

Full Changelog: https://github.com/KRTirtho/spotube/compare/v2.0.0...v2.1.0

spotube - v2.0.0🥳📱

Published by KRTirtho over 2 years ago

New🎉

  • 💥Android Support💥 https://github.com/KRTirtho/spotube/issues/24
  • Responsive UI (Mobile, Tablet)
  • Anonymous/Guest Account
  • Mini floating player
  • Full page PlayerView for smaller devices
  • Horizontal CategoryCard Scroll & pagination for quicker access to Playlists
  • Bottom bar for smaller devices
  • Collapsed Sidebar for medium sized devices
  • Persists Volume level
  • Android NavigationPanel controls (OS media controls of Android)

Improved📈

  • Search - now scrolls & paginates for Playlists & Albums
  • Authentication - allows guest accounts making authentication optional
  • Lyrics - can be fetched without requiring GeniusAccessToken. This makes geniusAccessToken optional
  • UI snappiness & faster load times
  • Simpler logic, faster calculations & better caching (flutter_hooks)
  • shared state management - uses riverpod & hooks combination

Bug fixes🩹

Full Changelog: https://github.com/KRTirtho/spotube/compare/v1.2.0...v2.0.0

spotube - v1.2.0🎉

Published by KRTirtho over 2 years ago

New🎉

  • Initial global custom reconfigurable hotkey support for playback controls (play-pause/next/previous)
  • Credit section in the Settings page with important links

Improved📈

  • Macos support
  • Genius (Lyrics Provider) access_token can be saved in the Login page too
  • Better theme for dropdown-buttons

Bug fixes🩹

New Contributors

Full Changelog: https://github.com/KRTirtho/spotube/compare/v1.1.0...v1.2.0

spotube - v1.1.0

Published by KRTirtho over 2 years ago

v1.1.0

New🎉

  • MacOS support (PR https://github.com/KRTirtho/spotube/pull/7)
  • Download currently playing track to /home/<user>/Downloads/Spotube (Linux, MacOS) or C:\Users\<user>\Downloads\Spotube (Windows)
  • Play playlist from any song (index) instead of only the first track
  • AlbumCard for showing album's metadata
  • AlbumView aka show album tracks
  • Play an album
  • ArtistCard for showing artist metadata on the fly
  • ArtistProfile for showing complete details of the artist
  • Play artist's top tracks
  • View Artist's "Fans also like" section
  • Search page
  • Play tracks from search result
  • Click to open artist-profile/album everywhere in the application

Improved📈

  • UserLibrary album & artist tab
  • PlaylistView simplified layout with ListView instead of TableView
  • Control Theme from settings manually
  • PageWindowTitleBar now acts as appBar

Bug fixes🩹

  • Unsafe access to album art/artist/user Images with .first or .last causing accessing empty List error
  • url_launcher's unstable canLaunch method blocks OAuth login in certain *nix OSs
  • Refresh token gets revoked & doesn't get renewed automatically

New Contributors

Full Changelog: https://github.com/KRTirtho/spotube/compare/v1.0.1...v1.1.0

spotube - v1.0.1

Published by KRTirtho almost 3 years ago

BUGFIXES

Features

  • Placeholder avatar for User section powered by dicebear.com
spotube - v1.0.0

Published by KRTirtho almost 3 years ago

Changes:

  • Complete re-write in Flutter/Dart (799e13c37635f0af18bacec17ebfba8a088b837b)
  • mpv & youtube-dl runtime dependencies dropped (07b1891cb4d1262bad55586d147b54366290471c)
  • just_audio (libwinmedia + libwebkit2gtk-4.0-dev) + youtube_explode based playback & streaming
  • lyrics are provided by genius.com (requires access_token) (d647d5ed1f29827f34e35cf2c0812d7fb9db7f40)
  • inno_setup based windows/win32 GUI installer (dbf8a348dfde304a1f118e9305512ccee31410e9)

Improvements

  • Lower RAM & CPU usage. 2x less RAM usage & 20% less CPU usage
  • Faster playback & smooth track change with proper shuffling support
  • Automatic Dark mode support (system)
  • 54% smaller bundle size
  • Available through package managers in Linux (Debian, Arch, Flatpak & AppImage)

Full Changelog: https://github.com/KRTirtho/spotube/compare/v0.0.3...v1.0.0

spotube - Spotube v0.0.3

Published by KRTirtho over 3 years ago

Newly added Features:

  • Automated installer for Windows (now doesn't require manual mpv-player install)
  • Playback caching
  • Retry button for ManualLyricDialog
  • Download track (with a button)
  • Redirect to youtube video by clicking on the title of the track

Tweaked

  • Shortcuts, now it doesn't interfere while typing in a input box

Bug Fixes

  • Cached image didn't get deleted after exiting certain cache limit
spotube - Spotube v0.0.2

Published by KRTirtho over 3 years ago

Newly added Features:

  • Lyric Seek
  • Images for Playlists
  • Infinite Query/ Pagination support for Home & Genre
  • Settings for configuring local configuration

Tweaked

  • Layout of Home (fixes the jiggering of Playlist Links on hover)

Bug Fixes

  • "access_token not found" Error after OAuth Login with Spotify credentials (used to need a restart of the app to load the access_token)
  • Volume level wasn't cached even after changing volume
spotube - Spotube v0.0.1

Published by KRTirtho over 3 years ago

The very first & initial release of the Spotube application.

Currently working features

  • Playback handled locally. No playback data synced with the spotify api
  • Playback Queue
  • Add to favorite (Track & Playlist)
  • Play/pause, next/prev, shuffle, volume etc.. basic music controls works fine
  • No API rate limitation on basic usage