Files
Alexander a1f6701bac 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
2026-04-28 16:28:53 +02:00

59 lines
1.4 KiB
Markdown

# MiniMediaMetadataAPI
## Overview
A self-hosted metadata API that aggregates data from multiple music providers (Spotify, Tidal, MusicBrainz, Deezer, Discogs) with a low memory footprint.
## Key Features
- **Providers**: MusicBrainz, Spotify, Tidal, Deezer, Discogs
- **Memory**: <250MB footprint
- **Database**: PostgreSQL
- **API**: REST
- **License**: GPL-3.0
## Source
| Resource | URL |
|----------|-----|
| **Repository** | https://github.com/MusicMoveArr/MiniMediaMetadataAPI |
| **Related Scanner** | https://github.com/MusicMoveArr/MiniMediaScanner |
## API Endpoints
```bash
# Search by provider
GET /api/artists?provider=Any&query=radiohead
GET /api/artists?provider=Spotify&query=radiohead
GET /api/artists?provider=MusicBrainz&query=radiohead
GET /api/albums?provider=Deezer&query=ok+computer
GET /api/tracks?provider=Tidal&query=paranoid+android
```
## Self-Hosting
```yaml
# docker-compose.yml
services:
api:
container_name: MiniMediaMetadataAPI
image: ghcr.io/musicmovearr/minimediametadataapi:latest
deploy:
resources:
limits:
memory: 256M
ports:
- "56232:8080"
volumes:
- ./appsettings.json:/app/appsettings.json
restart: unless-stopped
```
## Notes
- Shares database with MiniMediaScanner
- Query by provider type (Any, Tidal, MusicBrainz, Spotify, Deezer, Discogs)
- Lightweight alternative to running multiple provider APIs
- Active development (last updated March 2026)