* feat: add youtube engine abstraction and yt-dlp integration
* chore: add yt-dlp as optional dependency
* feat: implement custom path support for youtube engines
* chore: check for custom path in setting engine select dropdown
* chore: update yt_dlp_dart
* chore: setting video url instead of video id in fetchSiblings
* feat: implement NewPipe engine
* chore: update local path to git url for flutter_new_pipe_extractor package
* chore: fix android build isn't working
* chore: fix routes not working when initially signing in
* refactor: drop fallback support to different sources
* feat: add android home widget support
* feat: style widget player and add intent and callbacks on action
* feat: responsive and working android home widget
* fix(android): models stripping causing it to not work for release apks
* chore: ios lockfile update
* feat: config for iOS widget
* cd: upgrade xcode
* cd: reduce xcode version
* feat: add a christmas background
* feat: add playback history provider
* feat: implement recently played section
* refactor: use route names
* feat: add stats summary and top tracks/artists/albums
* feat: add top date based filtering
* feat: add stream money calculation
* refactor: place search in mobile navbar and settings in home appbar
* feat: add individual minutes and streams page
* feat(stats): add individual minutes and streams page
* chore: default period to 1 month
* feat: add text to explain user how hypothetical fees are calculated
* chore: ensure usage of route names instead of direct paths
* cd: add cache key
* cd: remove media_kit_event_loop from git
* fix: certificate error by using custom ssl certificate
* Cd/docker linux ar (#1468)
* cd: use docker buildx
* cd: use linux host for linux arm instead of macos m1
m1 doesn't support nested virtualization. (Apple truly sucks)
* cd: don't specify arch in Dockerfile
* cd: use custom Dockerfile from ubuntu instead of flutter image
* cd: add setup java for android
* cd: add flutter distributor pre-built docker image for arm
* cd: save me from this cursed arm build
* cd: ??
* cd: ??
* cd: use docker build
* fix: windows SSL Exception for Signing in
* refactor: extract update checker as a basic function instead of a hook
* refactor: remove SourcedTrack based audio player and utilize mediakit playback system
* feat: implement local (loopback) server to resolve stream source and leverage the media_kit playback API
* feat: add source change support and re-add prefetching tracks
* fix: assign lastId when track fetch completes regardless of error
* chore: remove print statements
* fix: remote queue not working
* fix: increase mpv network timeout to reduce auto-skipping
* fix: do not pre-fetch local tracks
* fix(proxy-playlist): reset collections on load
* chore: fix lint warnings
* fix(mobile): player overlay should not be visible when the player is not playing
* chore: fix typo in turkish translation
* cd: checkout PR branch
* cd: upgrade flutter version
* chore: fix lint errors
* feat: add connect server support
* feat: add ability discover and connect to same network Spotube(s) and sync queue
* feat(connect): add player controls, shuffle, loop, progress bar and queue support
* feat: make control page adaptive
* feat: add volume control support
* cd: upgrade macos runner version
* chore: upgrade inappwebview version to 6
* feat: customized devices button
* feat: add user icon next to devices button
* feat: add play in remote device support
* feat: show alert when new client connects
* fix: ignore the device itself from broadcast list
* fix: volume control not working
* feat: add ability to select current device's output speaker
* feat: add riverpod based favorite album provider
* feat: add album is saved, new releases and tracks providers
* feat: add artist related providers
* feat: add all categories providers
* feat: add lyrics provider
* feat: add playlist related providers
* feat: add search provider
* feat: add view and spotify friends provider
* feat: add playlist create and update and favorite handlers
* feat: use providers in home screen
* chore: fix dart lint issues
* feat: use new providers for playlist and albums screen
* feat: use providers in artist page
* feat: use providers on library page
* feat: use provider for playlist and album card and heart button
* feat: use provider in search page
* feat: use providers in generate playlist
* feat: use provider in lyrics screen
* feat: use provider for create playlist
* feat: use provider in add track dialog
* feat: use providers in remaining pages and remove fl_query
* fix: remove direct access to provider.value
* fix: glitching when loading
* fix: user album loading next page indicator
* feat: make many provider autoDispose after 5 minutes of no usage
* fix: ignore episodes in tracks
* feat: concurrent download service & download prorvider
* feat: implement chunked downloader
* fix: no audio-tags in Linux and duration not showing up for local tracks
* feat: show matching tracks in queue as well
* feat: always uses piped api for download to avoid IP block
* fix: invalid downloadCount