Repository navigation
Home
Derrik Diener edited this page Jul 17, 2026
·
6 revisions
Supernova is a modern, high-performance, self-hosted music server and player. It bridges the gap between the power of self-hosted infrastructure and the sleek, polished experience of modern streaming apps.
Built with a highly concurrent Go backend and a responsive, dynamic React/TypeScript frontend, Supernova gives you absolute control over your local audio library without sacrificing usability.
- Features & Capabilities: Explore what Supernova brings to the table, from downloading to dynamic full-screen players.
- Plugin System: Learn how Supernova extends its capabilities using the background plugin runner (Last.fm, LRCLib, Autotagger, etc).
- Subsonic API: Documentation on connecting your favorite third-party Subsonic apps to Supernova.
- Architecture Overview: Deep dive into the SQLite3 WAL schema and database optimizations.
- Design Philosophy: Guidelines on UI/UX standards, components, and aesthetic directives.
Supernova's background task system is heavily modularized. Each plugin executes asynchronously.
- Album Merger: The algorithm behind grouping canonical albums.
- Artist Merger: Deduplicating trailing whitespace and casing issues in tags.
- Autotagger: Fetching missing ID3/FLAC metadata via Acoustid matching.
- Deduper: Masking duplicate track files within the library.
- Last.fm Scrobbler: Managing background scrobbling state according to strict API rules.
- LRCLib Lyrics: Proxying time-synchronized lyrics for the Fullscreen player.
- Podcasts: Subscription and streaming implementation via the PodcastIndex.
- Subsonic API: Deep dive into the universal REST endpoints for third-party clients.
- API Reference: Documentation on the native REST API endpoints.
-
Tools: Learn about the included CLI (
sn), Python GUI, and Docker configurations. - Contributing: Instructions for setting up your local dev environment.
- Code Standards: The strict Go and React/TypeScript standards required for all PRs.
Supernova was built on a few core principles:
- Speed & Reliability: Written in Go with a deeply optimized SQLite database layout, UI actions are instantaneous and streams start immediately.
- First-Class UI: No "developer art". It features a fluid, context-aware web UI with features like drag-and-drop queues, right-click context menus, and a dedicated fullscreen player.
- Data Ownership: Your files are your files. Features like batch Zip downloads ensure you can always extract your music out of the server at any time.
- Third-Party Friendly: Fully Subsonic compliant, meaning you aren't locked into the web UI on mobile devices.