feat: initial implementation of metadata aggregator
- gRPC service with MusicBrainz provider - PostgreSQL schema with migrations - Service layer with database-first caching - Repository pattern for data access - YAML configuration support - Research documentation for 17 music metadata projects
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
# Navidrome
|
||||
|
||||
## Overview
|
||||
|
||||
Modern music server and streamer compatible with Subsonic/Airsonic clients. Lightweight, fast, and self-contained with web-based UI.
|
||||
|
||||
## Key Features
|
||||
|
||||
- **Popularity**: Very high (one of the most popular self-hosted music servers)
|
||||
- **API**: OpenSubsonic v1.16.1
|
||||
- **Metadata**: Library scans + Last.fm integration
|
||||
- **Language**: Go
|
||||
- **License**: GPL-3.0
|
||||
|
||||
## Source
|
||||
|
||||
| Resource | URL |
|
||||
|----------|-----|
|
||||
| **Repository** | https://github.com/navidrome/navidrome |
|
||||
| **Website** | https://navidrome.org |
|
||||
| **Documentation** | https://www.navidrome.org/docs |
|
||||
|
||||
## Key Features
|
||||
|
||||
- Very low resource usage (Go binary)
|
||||
- Handles large libraries (tested with 900K+ songs)
|
||||
- Multi-user support with individual settings
|
||||
- Transcoding on-the-fly
|
||||
- Last.fm scrobbling
|
||||
- Lyrics support (embedded and `.lrc` files)
|
||||
- Multiple themes
|
||||
|
||||
## API Endpoints
|
||||
|
||||
```bash
|
||||
# Subsonic API
|
||||
GET /rest/getArtists
|
||||
GET /rest/getArtist?id={artistId}
|
||||
GET /rest/getAlbum?id={albumId}
|
||||
GET /rest/getSong?id={songId}
|
||||
GET /rest/search3?query={query}
|
||||
```
|
||||
|
||||
## Self-Hosting
|
||||
|
||||
```bash
|
||||
# Docker
|
||||
docker run -d \
|
||||
--name navidrome \
|
||||
-p 4533:4533 \
|
||||
-v /path/to/music:/music:ro \
|
||||
-v /path/to/data:/data \
|
||||
deluan/navidrome
|
||||
|
||||
# Or download binary
|
||||
# https://github.com/navidrome/navidrome/releases
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- Compatible with many Subsonic clients (DSub, Symfonium, Ultrasonic, etc.)
|
||||
- Very lightweight (suitable for Raspberry Pi)
|
||||
- Web UI included
|
||||
- Primary focus is streaming, but provides comprehensive metadata API
|
||||
Reference in New Issue
Block a user