You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Enabled by Default: Yes (Disable via SUPERNOVA_PLUGIN_LRCLIB=false)
Purpose
Provides the synchronized lyrics experience for the Fullscreen Player by fetching time-coded lyrics from the open-source LRCLib database.
Technical Internals
Proxy Architecture: The Supernova backend proxies the requests to lrclib.net. This avoids Cross-Origin Resource Sharing (CORS) blocks in the browser and hides the client's IP from the external service.
Matching: When a track plays, the frontend sends the track_name, artist_name, and album_name to the proxy. The backend constructs the exact query parameters needed.
Security: The backend restricts the incoming JSON response payload size using an io.LimitReader (capped at 5MB) to protect the server's memory from unexpectedly massive payloads.
Caching: The frontend implements a memory-cache dictionary to store previously fetched lyrics. If a user repeats a song, no external network request is made.
API Execution
GET /api/plugins/lrclib/lyrics?artist=<artist>&album=<album>&track=<track>