MagicMirror² module that displays your Discogs vinyl collection with beautiful stats, random album, and today's pick.
- 📀 Today's vinyl
- 🎲 Random album
- 🆕 Latest added
- 📊 Statistics overview
- 🎤 Top artists with visual bars
- 🌍 Multi-language support
- ⚙️ Per-module language override (NEW)
This module supports multiple languages using MagicMirror's built-in language system.
- 🇸🇪 Swedish
- 🇬🇧 English
- 🇩🇪 German
Set language in your main config.js:
language: "sv" // or "en" or "de"The module will automatically follow this setting.
You can force a specific language only for this module:
{
module: "MMM-VinylCollection",
position: "top_right",
config: {
username: "YOUR_DISCOGS_USERNAME",
token: "YOUR_DISCOGS_TOKEN",
language: "en" // 🔥 overrides global language
}
}If not set, the module falls back to MagicMirror’s global language.
cd ~/MagicMirror/modules
git clone https://github.com/dentrass/MMM-VinylCollection.git
cd MMM-VinylCollection
npm installBasic setup:
{
module: "MMM-VinylCollection",
position: "top_right",
config: {
username: "YOUR_DISCOGS_USERNAME",
token: "YOUR_DISCOGS_TOKEN"
}
}config: {
username: "YOUR_USERNAME",
token: "YOUR_TOKEN",
updateInterval: 43200000, // 12 hours
randomAlbumInterval: 900000 // 15 minutes
}- Go to: https://www.discogs.com/settings/developers
- Generate a personal access token
- Paste it into your config
MMM-VinylCollection/
├── MMM-VinylCollection.js
├── node_helper.js
├── vinyl.css
├── translations/
│ ├── en.json
│ └── sv.json
├── package.json
└── README.md
- Uses caching (6 hours) to minimize API calls
- Fetches full collection only when needed
- Smooth UI updates
- No external dependencies (uses native fetch)
Powered by the Discogs API: https://www.discogs.com/developers
dentrass
Feel free to:
- Add more languages 🌐
- Improve UI 🎨
- Suggest features 💡
Pull requests are welcome!
MIT License
