BetterLyrics is a feature-rich WinUI3 desktop application for Windows that displays and customizes synchronized song lyrics. The application serves as both a lyrics visualizer and a music player, supporting multiple display modes (standard, fullscreen, desktop wallpaper, docked, taskbar) with GPU-accelerated rendering via Win2D and ComputeSharp pixel shaders. It integrates with the Windows Global System Media Transport Controls (GSMTC) to work with external players like Spotify, Apple Music, and NetEase, and provides its own local media playback engine with a music library browser and playlist management. The architecture follows MVVM (CommunityToolkit.Mvvm) with a service layer and dependency injection, separating platform-agnostic logic in 'BetterLyrics.Core', UI in 'BetterLyrics.WinUI3', and a plugin SDK in 'BetterLyrics.Sdk'. Core data flows include lyrics retrieval from multiple providers (QQ, Netease, Kugou, Apple Music, LrcLib) with caching, metadata extraction via TagLib, and analytics tracking stored in LiteDB. The plugin SDK allows third-party developers to extend lyrics sources, translations, transliterations, and AI services via isolated AssemblyLoadContext. Reusable components include generic helpers (Debouncer, ValueTransition, FullyObservableCollection), a comprehensive lyrics format parser (LRC, TTML, QRC/KRC), and a plugin framework with auto-generated settings UI.
This repository is a comprehensive distribution hub of custom music source scripts (ι³ζΊ) for the LX Music (ζ΄ιͺι³δΉ) desktop and mobile application. It contains hundreds of JavaScript files organized by version batches and quality tiers, ranging from simple single-platform scripts to complex multi-source aggregators. The scripts implement the LX Music plugin API to fetch playback URLs, search, lyrics, and album art from Chinese streaming platforms including NetEase, QQ Music, Kuwo, Kugou, and Migu. Many scripts employ fallback chains, caching, and auto-update mechanisms. The repository also includes obfuscated and commercial scripts with embedded authentication tokens. It does not contain any application code itselfβit is purely a plugin repository. Code quality varies widely; some scripts are well-structured while others are obfuscated or duplicated across versions. There are no unit tests, and all scripts depend on external third-party APIs that may become unavailable.