https://github.com/mirrorfm/core
Labels & Channels on Spotify
https://github.com/mirrorfm/core
discogs music spotify youtube
Last synced: about 1 month ago
JSON representation
Labels & Channels on Spotify
- Host: GitHub
- URL: https://github.com/mirrorfm/core
- Owner: mirrorfm
- Created: 2019-10-13T08:50:46.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2026-04-12T23:12:45.000Z (about 2 months ago)
- Last Synced: 2026-04-12T23:19:29.290Z (about 2 months ago)
- Topics: discogs, music, spotify, youtube
- Language: Go
- Homepage: https://mirror.fm
- Size: 19.6 MB
- Stars: 11
- Watchers: 1
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# Mirror.FM
Sync Discogs labels or YouTube music channels with Spotify playlists.
--------
This repository contains the background worker functions.
- Website: https://github.com/mirrorfm/www
- Submit channels/labels: https://github.com/mirrorfm/data
## Features
- Automatically builds Spotify playlists from any YouTube music channel or Discogs label
- Constantly checks for new uploads/releases
- Finds previously unreleased songs that were released on Spotify today
- Provides backups for deleted, hacked or terminated YouTube channels (archived playlists)
## Functions
| Function | Runtime | Description |
|---|---|---|
| [`from-github`](functions/from-github/) | Go | Webhook handler for GitHub data submissions |
| [`from-youtube`](functions/from-youtube/) | Python | Fetches YouTube channel data |
| [`from-discogs`](functions/from-discogs/) | Go | Fetches Discogs label data |
| [`to-spotify`](functions/to-spotify/) | Python | Searches and adds tracks to Spotify |
| [`to-www`](functions/to-www/) | Go | REST API serving the frontend |
| [`manage-playlists`](functions/manage-playlists/) | Go | Sorts, archives, and repairs playlists |
## Deployment
- **k3s** (primary): `from-youtube`, `from-discogs`, `to-spotify`, `manage-playlists` — deployed via [deploy-k3s.yml](.github/workflows/deploy-k3s.yml)
- **AWS Lambda** (cloud-only): `to-www`, `from-github` — deployed via [deploy-lambda.yml](.github/workflows/deploy-lambda.yml)
- **AWS Lambda** (fallback): k3s functions are also deployed to Lambda as fallback
- **Infrastructure**: Terraform in [`terraform/`](terraform/) — deployed via [terraform.yml](.github/workflows/terraform.yml)