Files
minstrel/flutter_client/pubspec.yaml
T
bvandeusen f732c49645 feat(flutter): disk-persistent cover cache via cached_network_image
Slice 1 of the cover-caching pass. The previous Image.network /
NetworkImage path only cached covers in memory, so a scroll-off + scroll-
back or an app restart re-downloaded every tile from the server. Swap
to cached_network_image so bytes land on disk (path_provider temp dir,
URL-keyed) and survive both.

Sites migrated:
  - ServerImage (all /api/*/cover usage — home grid, library, playlist,
    artist/album detail headers)
  - DiscoverScreen Lidarr suggestion thumbnails
  - PlayerBar mini cover (HTTPS branch; file:// branch unchanged since
    AlbumCoverCache files are already on disk)

Auth header forwarding preserved via httpHeaders. Fade-in disabled so
populated grids paint instantly on cache hit.

Slice 2 (pre-warm during sync) builds on this same cache manager.
2026-05-13 17:59:42 -04:00

55 lines
1.4 KiB
YAML

name: minstrel
description: Minstrel mobile client
publish_to: 'none'
version: 2026.5.11+1
environment:
sdk: '>=3.5.0 <4.0.0'
flutter: '>=3.24.0'
dependencies:
flutter:
sdk: flutter
flutter_riverpod: ^3.3.1
dio: ^5.7.0
just_audio: ^0.10.5
audio_service: ^0.18.15
flutter_secure_storage: ^10.1.0
go_router: ^17.2.3
flutter_svg: ^2.0.16
google_fonts: ^8.1.0
# 10.x conflicts with flutter_secure_storage 10.x on win32. Hold at 8.3.1
# until either lib bumps win32 to 6.x.
package_info_plus: ^8.3.1
pub_semver: ^2.1.4
cupertino_icons: ^1.0.8
path_provider: ^2.1.5
drift: ^2.18.0
drift_flutter: ^0.2.0
sqlite3_flutter_libs: ^0.5.24
connectivity_plus: ^6.0.5
flutter_timezone: ^4.1.1
palette_generator: ^0.3.3
# Disk-persistent image cache. Image.network only caches in memory, so
# cover art repainted after a scroll-off or app restart re-fetches from
# the server. cached_network_image stores the bytes under
# path_provider's temp dir keyed by URL, surviving both. Used directly
# by ServerImage (auth-aware path) and as CachedNetworkImageProvider
# for the mini bar (which composes its own Image widget).
cached_network_image: ^3.4.1
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^6.0.0
mocktail: ^1.0.4
drift_dev: ^2.18.0
build_runner: ^2.4.13
flutter:
uses-material-design: true
assets:
- assets/svg/
- assets/error-copy.json
- shared/fabledsword.tokens.json