Update What's New modal with cache discovery, genre deep dive, DB storage, performance, mobile, and album split fix
This commit is contained in:
parent
e3d70da55a
commit
17e06aaae5
1 changed files with 75 additions and 0 deletions
|
|
@ -18449,6 +18449,81 @@ def get_version_info():
|
|||
"title": "What's New in SoulSync",
|
||||
"subtitle": f"Version {SOULSYNC_VERSION} — Latest Changes",
|
||||
"sections": [
|
||||
{
|
||||
"title": "🔍 Cache-Powered Discovery",
|
||||
"description": "Five new discover sections mined from your metadata cache — zero API calls",
|
||||
"features": [
|
||||
"• Undiscovered Albums: albums by your most-played artists that aren't in your library",
|
||||
"• New In Your Genres: recently released albums matching your top genres",
|
||||
"• From Your Labels: popular albums on labels already in your library",
|
||||
"• Deep Cuts: low-popularity tracks from artists you listen to — find the hidden gems",
|
||||
"• Genre Explorer: genre landscape pills with artist counts — tap to deep dive",
|
||||
"• All data sourced from local metadata cache — instant, no API rate limits"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "🎶 Genre Deep Dive Modal",
|
||||
"description": "Tap any genre pill to explore artists, tracks, and albums in that genre",
|
||||
"features": [
|
||||
"• Artists section with scaled avatars — top artist gets largest, 'In Library' badges",
|
||||
"• Click any artist → navigates directly to their page on the Artists tab",
|
||||
"• Popular tracks list with album art, duration, click to open album download modal",
|
||||
"• Albums carousel with 'In Library' badges and full download flow on click",
|
||||
"• Related genres pills — click to seamlessly switch to a sibling genre",
|
||||
"• Header shows counts: '12 artists · 15 tracks · 20 albums'",
|
||||
"• Accent gradient header with animated light sweep"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "💾 Database Storage Visualization",
|
||||
"description": "See how your database space is distributed across tables",
|
||||
"features": [
|
||||
"• Donut chart on Stats page showing storage breakdown by table",
|
||||
"• Uses SQLite dbstat for real byte sizes, falls back to row counts",
|
||||
"• Top 8 tables shown individually, rest grouped as 'Other'",
|
||||
"• Center label shows total database file size"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "⚡ Library Page Performance",
|
||||
"description": "Library artist grid loads significantly faster with smoother animations",
|
||||
"features": [
|
||||
"• innerHTML batch rendering replaces per-card DOM manipulation — near-instant grid population",
|
||||
"• Database query split into 3 steps: paginate first, then batch-fetch counts for visible page only",
|
||||
"• Event delegation — single click listener instead of 75+ individual handlers",
|
||||
"• Staggered card fade-in animation on page load"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "🔄 Per-Artist Enrichment Rings",
|
||||
"description": "See metadata coverage for each artist on their detail page",
|
||||
"features": [
|
||||
"• SVG ring indicators for all 9 enrichment services below the album/EP/singles bars",
|
||||
"• Rings animate on page load with staggered fill-in effect",
|
||||
"• Hover glow in each service's brand color",
|
||||
"• Stats page enrichment coverage also expanded to all 9 services"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "📱 Mobile Responsive Overhaul",
|
||||
"description": "Comprehensive mobile layout fixes across all pages",
|
||||
"features": [
|
||||
"• Stats, Automations, Hydrabase, Issues, Help pages now fully mobile responsive",
|
||||
"• Artist hero section stacks properly with compact image, wrapping badges, bio clamp",
|
||||
"• Enhanced library track table: action columns collapse into iOS-style bottom sheet popover",
|
||||
"• Genre explorer, enrichment rings, filter bars all adapt to narrow screens"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "🎵 Album Split Fix (Navidrome)",
|
||||
"description": "Prevent deluxe/standard editions from splitting into separate albums",
|
||||
"features": [
|
||||
"• MusicBrainz release cache key normalized — strips edition suffixes (Deluxe, Remastered, etc.)",
|
||||
"• First track's MBID locked in for all subsequent tracks in the same album",
|
||||
"• Handles both parenthetical '(Deluxe Edition)' and bare 'Deluxe Edition' suffixes",
|
||||
"• Opus bitrate capped at 256kbps to prevent encoding failures"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "🎧 Scrobbling to Last.fm & ListenBrainz",
|
||||
"description": "Automatically scrobble your plays from Plex, Jellyfin, or Navidrome",
|
||||
|
|
|
|||
Loading…
Reference in a new issue