spotube/pubspec.yaml
Blake Leonard 22caa818f4
feat: Local music library (#1479)
* feat: add one additional library folder

This folder just doesn't get downloaded to.
I think I'm going to rework it so that it can be multiple folders,
but I'm going to commit my progress so far anyway.

Signed-off-by: Blake Leonard <me@blakes.dev>

* chore: update dependencies so that it builds

I'm not sure if this breaks CI or something, but I couldn't build
it locally to test my changes, so I made these changes and it
builds again.

Signed-off-by: Blake Leonard <me@blakes.dev>

* feat: index multiple folders of local music

If you used a previous commit from this branch, this is a breaking
change, because it changes the type of a configuration field. but
since this is still in development, it should be fine.

Signed-off-by: Blake Leonard <me@blakes.dev>

* refactor: manage local library in local tracks tab

This also refactors the list to use slivers instead. That's the
easiest way to have multiple scrolling lists here...

The console keeps getting spammed with some intermediate layout
error but I can't hold it long enough to figure out what's causing
it.

Signed-off-by: Blake Leonard <me@blakes.dev>

* refactor: use folder add/remove icons in library

Signed-off-by: Blake Leonard <me@blakes.dev>

* refactor: remove redundant settings page

Signed-off-by: Blake Leonard <me@blakes.dev>

* refactor: rename "Local Tracks" to just "Local"

Not sure if this would be the recommended way to do it...

Signed-off-by: Blake Leonard <me@blakes.dev>

* fix: console spam about useless Expanded

Signed-off-by: Blake Leonard <me@blakes.dev>

* chore: remove completed TODO

Signed-off-by: Blake Leonard <me@blakes.dev>

* chore: use new Platform constants; regenerate plugins

Signed-off-by: Blake Leonard <me@blakes.dev>

* refactor: put local libraries on separate pages

Signed-off-by: Blake Leonard <me@blakes.dev>

---------

Signed-off-by: Blake Leonard <me@blakes.dev>
2024-05-23 15:18:01 +06:00

200 lines
4.9 KiB
YAML

name: spotube
description: Open source Spotify client that doesn't require Premium nor uses Electron! Available for both desktop & mobile!
publish_to: "none"
version: 3.6.0+30
homepage: https://spotube.krtirtho.dev
repository: https://github.com/KRTirtho/spotube
environment:
sdk: ">=3.0.0 <4.0.0"
flutter: ">=3.10.0"
dependencies:
args: ^2.5.0
async: ^2.9.0
audio_service: ^0.18.13
audio_service_mpris: ^0.1.3
audio_session: ^0.1.19
auto_size_text: ^3.0.0
buttons_tabbar: ^1.3.8
cached_network_image: ^3.3.1
catcher_2: ^1.2.4
collection: ^1.15.0
curved_navigation_bar: ^1.0.3
dbus: ^0.7.8
device_info_plus: ^10.1.0
device_preview: ^1.1.0
dio: ^5.4.3+1
disable_battery_optimization: ^1.1.1
duration: ^3.0.12
envied: ^0.5.4+1
file_picker: ^8.0.0+1
file_selector: ^1.0.3
fluentui_system_icons: ^1.1.234
flutter:
sdk: flutter
flutter_cache_manager: ^3.3.0
flutter_displaymode: ^0.6.0
flutter_feather_icons: ^2.0.0+1
flutter_hooks: ^0.20.5
flutter_inappwebview: ^6.0.0
flutter_localizations:
sdk: flutter
flutter_native_splash: ^2.4.0
flutter_riverpod: ^2.5.1
flutter_secure_storage: ^9.0.0
flutter_svg: ^1.1.6
form_validator: ^2.1.1
fuzzywuzzy: ^1.1.6
go_router: 12.1.3 # Stuck on this https://github.com/flutter/flutter/issues/140869
google_fonts: ^6.2.1
hive: ^2.2.3
hive_flutter: ^1.1.0
hooks_riverpod: ^2.5.1
html: ^0.15.1
http: ^1.2.0
image_picker: ^1.1.0
intl: ^0.18.0
introduction_screen: ^3.1.14
json_annotation: ^4.8.1
logger: ^2.0.2
media_kit: ^1.1.10+1
media_kit_libs_audio: ^1.0.4
metadata_god: ^0.5.2+1
mime: ^1.0.2
package_info_plus: ^6.0.0
palette_generator: ^0.3.3
path: ^1.8.0
path_provider: ^2.1.3
permission_handler: ^11.3.1
piped_client: ^0.1.1
popover: ^0.3.0
scrobblenaut:
git:
url: https://github.com/KRTirtho/scrobblenaut.git
ref: dart-3-support
scroll_to_index: ^3.0.1
sidebarx: ^0.17.1
shared_preferences: ^2.2.3
skeleton_text: ^3.0.1
smtc_windows: ^0.1.2
stroke_text: ^0.0.2
system_theme: ^2.1.0
titlebar_buttons: ^1.0.0
url_launcher: ^6.2.6
uuid: ^4.4.0
version: ^3.0.2
visibility_detector: ^0.4.0+2
window_manager: ^0.3.8
window_size:
git:
url: https://github.com/google/flutter-desktop-embedding.git
ref: a738913c8ce2c9f47515382d40827e794a334274
path: plugins/window_size
youtube_explode_dart: ^2.2.0
simple_icons: ^10.1.3
jiosaavn: ^0.1.0
draggable_scrollbar:
git:
url: https://github.com/thielepaul/flutter-draggable-scrollbar.git
ref: cfd570035bf393de541d32e9b28808b5d7e602df
very_good_infinite_list: ^0.7.1
gap: ^3.0.1
sliver_tools: ^0.2.12
dart_discord_rpc:
git:
url: https://github.com/Tommypop2/dart_discord_rpc.git
html_unescape: ^2.0.0
wikipedia_api: ^0.1.0
skeletonizer: ^1.1.1
app_links: ^4.0.1
win32_registry: ^1.1.3
flutter_sharing_intent: ^1.1.0
flutter_broadcasts: ^0.4.0
freezed_annotation: ^2.4.1
spotify: ^0.13.5
bonsoir: ^5.1.9
shelf: ^1.4.1
shelf_router: ^1.1.4
shelf_web_socket: ^1.0.4
web_socket_channel: ^2.4.5
lrc: ^1.0.2
pub_api_client: ^2.4.0
pubspec_parse: ^1.2.2
timezone: ^0.9.2
crypto: ^3.0.3
local_notifier: ^0.1.6
tray_manager: ^0.2.2
dev_dependencies:
build_runner: ^2.4.9
envied_generator: ^0.5.4+1
flutter_gen_runner: ^5.4.0
flutter_launcher_icons: ^0.13.1
flutter_lints: ^3.0.1
flutter_test:
sdk: flutter
integration_test:
sdk: flutter
hive_generator: ^2.0.0
json_serializable: ^6.6.2
freezed: ^2.5.2
custom_lint: ^0.6.4
riverpod_lint: ^2.3.10
process_run: ^0.14.2
xml: ^6.5.0
io: ^1.0.4
dependency_overrides:
uuid: ^4.4.0
system_tray:
# TODO: remove this when flutter_desktop_tools gets updated
# to use [MenuItemBase] instead of [MenuItem]
git:
url: https://github.com/antler119/system_tray
ref: dc7ef410d5cfec897edf060c1c4baff69f7c181c
media_kit_native_event_loop: # to fix "macro name must be an identifier"
git:
url: https://github.com/media-kit/media-kit
path: media_kit_native_event_loop
ref: main
flutter:
generate: true
uses-material-design: true
assets:
- assets/
- assets/tutorial/
- assets/logos/
- LICENSE
flutter_launcher_icons:
ios: true
android: true
image_path: "assets/spotube-logo.png"
adaptive_icon_foreground: "assets/spotube-logo-foreground.jpg"
adaptive_icon_background: "#242832"
windows:
generate: true
image_path: "assets/spotube-logo.png"
icon_size: 48 # min:48, max:256, default: 48
macos:
generate: true
image_path: "assets/spotube-logo.png"
flutter_gen:
output: lib/collections
flutter_native_splash:
background_image: assets/bengali-patterns-bg.jpg
image: assets/spotube-logo.png
branding: assets/branding.png
android_12:
image: assets/spotube-logo_android12.png
branding: assets/branding.png
color: "#000000"
icon_background_color: "#000000"