diff --git a/README.md b/README.md index 71ab169..e397229 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,7 @@ works. | `0020-Keep-the-settings-tabs-clear-of-...` | The settings tab list scrolls instead of running over the app version on Linux. | | `0021-Show-and-change-skins-of-custom-...` | A custom server account's skin is shown and changed on the skin page, and its head in the account list. | | `0022-Sign-in-to-custom-servers-in-...` | Servers with Yggdrasil Connect, such as LittleSkin, sign in on their own page, with two-factor authentication. | +| `0023-Browse-LittleSkin-s-skin-library` | LittleSkin's skin library in the Browse tab, with search, sorting and likes. | ### Offline accounts @@ -149,7 +150,8 @@ name: first in the `player_skins` folder in the launcher directory (`.png` has the switch and a button that opens the folder. The Browse tab finds skins elsewhere. Ely.by's catalogue is browsed in the app, with its sorting, -filters and like, wearer and view counts. NameMC, laby.net and crafty.gg open in a window of the app +filters and like, wearer and view counts, and so is LittleSkin's library, with its search by name, +sorting and likes. NameMC, laby.net and crafty.gg open in a window of the app instead, because their skin lists are bot-protected or not meant for other programs; the skin page you open there is previewed and can be added. diff --git a/patches/0023-Browse-LittleSkin-s-skin-library.patch b/patches/0023-Browse-LittleSkin-s-skin-library.patch new file mode 100644 index 0000000..31395d8 --- /dev/null +++ b/patches/0023-Browse-LittleSkin-s-skin-library.patch @@ -0,0 +1,617 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Modrinth Enhanced +Date: Thu, 17 Sep 2026 15:52:25 +0200 +Subject: [PATCH] Browse LittleSkin's skin library + +LittleSkin is an account server, and also one of the largest skin +libraries around. The Browse tab gets it next to Ely.by: its own search +by name, sorting by likes or date and a filter for wide or slim arms, +with the likes on every tile and more pages as the list is scrolled. +Picking a skin previews it, and adding it works for any account. + +The list is the JSON LittleSkin's library page loads for itself, and its +robots.txt excludes none of it. Textures come through Rust, as Ely.by's +do: the site sends no CORS headers. +--- + .../src/components/ui/skin/SkinBrowser.vue | 165 +++++++++++++++--- + apps/app-frontend/src/helpers/skin-browser.ts | 42 ++++- + apps/app/build.rs | 2 + + apps/app/src/api/skin_browser.rs | 20 ++- + packages/app-lib/src/api/skin_browser.rs | 118 ++++++++++++- + 5 files changed, 318 insertions(+), 29 deletions(-) + +diff --git a/apps/app-frontend/src/components/ui/skin/SkinBrowser.vue b/apps/app-frontend/src/components/ui/skin/SkinBrowser.vue +index 3d92c68..26646a4 100644 +--- a/apps/app-frontend/src/components/ui/skin/SkinBrowser.vue ++++ b/apps/app-frontend/src/components/ui/skin/SkinBrowser.vue +@@ -1,7 +1,7 @@ +