Skip to content

Commit dcdb166

Browse files
committed
chore: update app summary
1 parent eeb8cab commit dcdb166

File tree

12 files changed

+44
-66
lines changed

12 files changed

+44
-66
lines changed

aur-struct/.SRCINFO

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
pkgbase = spotube-bin
2-
pkgdesc = A lightweight free Spotify crossplatform-client which handles playback manually, streams music using Youtube & no Spotify premium account is needed
2+
pkgdesc = Open source Spotify client that doesn't require Premium nor uses Electron! Available for both desktop & mobile!
33
pkgver = 2.3.0
44
pkgrel = 1
55
url = https://github.com/KRTirtho/spotube/

aur-struct/PKGBUILD

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ pkgname=spotube-bin
33
pkgver=%{{SPOTUBE_VERSION}}%
44
pkgrel=%{{PKGREL}}%
55
epoch=
6-
pkgdesc="A lightweight free Spotify crossplatform-client which handles playback manually, streams music using Youtube & no Spotify premium account is needed"
6+
pkgdesc="Open source Spotify client that doesn't require Premium nor uses Electron! Available for both desktop & mobile!"
77
arch=(x86_64)
88
url="https://github.com/KRTirtho/spotube/"
99
license=('BSD-4-Clause')

choco-struct/spotube.nuspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<docsUrl>https://github.com/KRTirtho/spotube#readme</docsUrl>
2323
<bugTrackerUrl>https://github.com/KRTirtho/spotube/issues/new</bugTrackerUrl>
2424
<tags>spotube music audio spotify youtube flutter</tags>
25-
<summary>A lightweight free Spotify 🎧 crossplatform-client 🖥📱 which handles playback manually, streams music using Youtube &amp; no Spotify premium account is needed 😱</summary>
25+
<summary>Open source Spotify client that doesn't require Premium nor uses Electron! Available for both desktop &amp; mobile!</summary>
2626
<description>
2727
Spotube is a Flutter based lightweight spotify client. It utilizes the power
2828
of Spotify &amp; Youtube's public API &amp; creates a hazardless, performant &amp; resource

lib/components/genre/category_card.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ class CategoryCard extends HookConsumerWidget {
4444
children: [
4545
Text(
4646
category.name!,
47-
style: Theme.of(context).textTheme.titleLarge,
47+
style: Theme.of(context).textTheme.titleMedium,
4848
),
4949
ScrollConfiguration(
5050
behavior: ScrollConfiguration.of(context).copyWith(

lib/components/library/user_playlists.dart

+22-32
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import 'package:hooks_riverpod/hooks_riverpod.dart';
66

77
import 'package:spotify/spotify.dart';
88
import 'package:spotube/collections/spotube_icons.dart';
9-
import 'package:spotube/components/playlist/playlist_create_dialog.dart';
109
import 'package:spotube/components/shared/shimmers/shimmer_playbutton_card.dart';
1110
import 'package:spotube/components/shared/fallbacks/anonymous_fallback.dart';
1211
import 'package:spotube/components/playlist/playlist_card.dart';
@@ -34,6 +33,7 @@ class UserPlaylists extends HookConsumerWidget {
3433
final likedTracksPlaylist = useMemoized(
3534
() => PlaylistSimple()
3635
..name = "Liked Tracks"
36+
..description = "All your liked tracks"
3737
..type = "playlist"
3838
..collaborative = false
3939
..public = false
@@ -75,42 +75,32 @@ class UserPlaylists extends HookConsumerWidget {
7575
return const AnonymousFallback();
7676
}
7777

78-
final children = [
79-
const PlaylistCreateDialog(),
80-
...playlists.map((playlist) => PlaylistCard(playlist)).toList(),
81-
];
8278
return RefreshIndicator(
8379
onRefresh: playlistsQuery.refresh,
8480
child: SingleChildScrollView(
8581
physics: const AlwaysScrollableScrollPhysics(),
86-
child: Padding(
87-
padding: const EdgeInsets.all(8.0),
88-
child: SafeArea(
89-
child: Column(
90-
children: [
91-
TextField(
92-
onChanged: (value) => searchText.value = value,
93-
decoration: const InputDecoration(
94-
hintText: "Filter your playlists...",
95-
prefixIcon: Icon(SpotubeIcons.filter),
96-
),
82+
padding: const EdgeInsets.all(8.0),
83+
child: SafeArea(
84+
child: Column(
85+
children: [
86+
TextField(
87+
onChanged: (value) => searchText.value = value,
88+
decoration: const InputDecoration(
89+
hintText: "Filter your playlists...",
90+
prefixIcon: Icon(SpotubeIcons.filter),
9791
),
98-
const SizedBox(height: 20),
99-
if (playlistsQuery.isLoading || !playlistsQuery.hasData)
100-
const Center(child: ShimmerPlaybuttonCard(count: 7))
101-
else
102-
Center(
103-
child: Wrap(
104-
spacing: spacing, // gap between adjacent chips
105-
runSpacing: 20, // gap between lines
106-
alignment: breakpoint.isSm
107-
? WrapAlignment.center
108-
: WrapAlignment.start,
109-
children: children,
110-
),
111-
),
112-
],
113-
),
92+
),
93+
const SizedBox(height: 20),
94+
if (playlistsQuery.isLoading || !playlistsQuery.hasData)
95+
const Center(child: ShimmerPlaybuttonCard(count: 7))
96+
else
97+
Wrap(
98+
runSpacing: 10,
99+
children: playlists
100+
.map((playlist) => PlaylistCard(playlist))
101+
.toList(),
102+
),
103+
],
114104
),
115105
),
116106
),

lib/components/playlist/playlist_card.dart

+1-5
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import 'package:flutter_hooks/flutter_hooks.dart';
44
import 'package:hooks_riverpod/hooks_riverpod.dart';
55
import 'package:spotify/spotify.dart';
66
import 'package:spotube/components/shared/playbutton_card.dart';
7-
import 'package:spotube/hooks/use_breakpoint_value.dart';
87
import 'package:spotube/provider/playlist_queue_provider.dart';
98
import 'package:spotube/provider/spotify_provider.dart';
109
import 'package:spotube/services/queries/queries.dart';
@@ -34,14 +33,11 @@ class PlaylistCard extends HookConsumerWidget {
3433
[playlistNotifier, tracks.value, query?.data],
3534
);
3635

37-
final int marginH =
38-
useBreakpointValue(sm: 10, md: 15, lg: 20, xl: 20, xxl: 20);
39-
4036
final updating = useState(false);
4137
final spotify = ref.watch(spotifyProvider);
4238

4339
return PlaybuttonCard(
44-
margin: EdgeInsets.symmetric(horizontal: marginH.toDouble()),
40+
margin: const EdgeInsets.symmetric(horizontal: 10),
4541
title: playlist.name!,
4642
description: playlist.description,
4743
imageUrl: TypeConversionUtils.image_X_UrlString(

lib/components/root/spotube_navigation_bar.dart

+8-16
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ class SpotubeNavigationBar extends HookConsumerWidget {
2424

2525
@override
2626
Widget build(BuildContext context, ref) {
27+
final theme = Theme.of(context);
2728
final downloadCount = ref.watch(
2829
downloaderProvider.select((s) => s.currentlyRunning),
2930
);
@@ -34,8 +35,8 @@ class SpotubeNavigationBar extends HookConsumerWidget {
3435
final insideSelectedIndex = useState<int>(selectedIndex);
3536

3637
final buttonColor = useBrightnessValue(
37-
Theme.of(context).colorScheme.inversePrimary,
38-
Theme.of(context).colorScheme.primary.withOpacity(0.2),
38+
theme.colorScheme.inversePrimary,
39+
theme.colorScheme.primary.withOpacity(0.2),
3940
);
4041

4142
useEffect(() {
@@ -51,31 +52,22 @@ class SpotubeNavigationBar extends HookConsumerWidget {
5152
child: BackdropFilter(
5253
filter: ImageFilter.blur(sigmaX: 15, sigmaY: 15),
5354
child: CurvedNavigationBar(
54-
backgroundColor: Theme.of(context)
55-
.colorScheme
56-
.secondaryContainer
57-
.withOpacity(0.72),
55+
backgroundColor:
56+
theme.colorScheme.secondaryContainer.withOpacity(0.72),
5857
buttonBackgroundColor: buttonColor,
59-
color: Theme.of(context).colorScheme.background,
58+
color: theme.colorScheme.background,
6059
height: 50,
6160
items: [
6261
...navbarTileList.map(
6362
(e) {
6463
return MouseRegion(
6564
cursor: SystemMouseCursors.click,
6665
child: Badge(
67-
backgroundColor: Theme.of(context).primaryColor,
6866
isLabelVisible: e.title == "Library" && downloadCount > 0,
69-
label: Text(
70-
downloadCount.toString(),
71-
style: const TextStyle(
72-
color: Colors.white,
73-
fontSize: 10,
74-
),
75-
),
67+
label: Text(downloadCount.toString()),
7668
child: Icon(
7769
e.icon,
78-
color: Theme.of(context).colorScheme.primary,
70+
color: theme.colorScheme.primary,
7971
),
8072
),
8173
);

lib/components/shared/playbutton_card.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ class PlaybuttonCard extends HookWidget {
9999
Positioned.directional(
100100
textDirection: TextDirection.ltr,
101101
end: end,
102-
bottom: -5,
102+
bottom: -size * .15,
103103
child: Column(
104104
mainAxisSize: MainAxisSize.min,
105105
children: [

lib/services/queries/category.dart

+5-2
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,10 @@ class CategoryQueries {
1515
"category-playlists",
1616
(pageParam, spotify) async {
1717
final categories = await spotify.categories
18-
.list(country: recommendationMarket)
18+
.list(
19+
country: recommendationMarket,
20+
locale: 'en_US',
21+
)
1922
.getPage(15, pageParam);
2023

2124
return categories;
@@ -44,7 +47,7 @@ class CategoryQueries {
4447
(pageParam, spotify) async {
4548
final playlists = await Pages<PlaylistSimple?>(
4649
spotify,
47-
"v1/browse/categories/$category/playlists",
50+
"v1/browse/categories/$category/playlists?country=US&locale=en_US",
4851
(json) => json == null ? null : PlaylistSimple.fromJson(json),
4952
'playlists',
5053
(json) => PlaylistsFeatured.fromJson(json),

linux/com.github.KRTirtho.Spotube.appdata.xml

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33
<id>com.github.KRTirtho.Spotube</id>
44
<name>Spotube</name>
55
<summary>
6-
A lightweight free Spotify crossplatform-client which handles playback manually, streams music
7-
using Youtube &amp; no Spotify premium account is needed
6+
Open source Spotify client that doesn't require Premium nor uses Electron! Available for both desktop &amp; mobile!
87
</summary>
98
<metadata_license>CC0-1.0</metadata_license>
109
<project_license>BSD-4-Clause</project_license>

metadata/en-US/full_description.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
A lightweight free Spotify crossplatform-client (desktop: Mac, Linux, Windows, mobile: Android) which handles playback manually, streams music using Youtube & no Spotify premium account is needed
1+
Open source Spotify client that doesn't require Premium nor uses Electron! Available for both desktop & mobile!
22

33

44
Features:

pubspec.yaml

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
name: spotube
2-
description: A lightweight free Spotify crossplatform-client which handles
3-
playback manually, streams music using Youtube & no Spotify premium account is
4-
needed
2+
description: Open source Spotify client that doesn't require Premium nor uses Electron! Available for both desktop & mobile!
53

64
publish_to: "none"
75

0 commit comments

Comments
 (0)