The bridge between your digital and physical collection

TropoDisc is an free software music collection manager. Synchronize your albums from Discogs, enrich them with custom metadata, and locate your records on physical shelves with connected LED strips.

Designed for serious music collectors

A responsive, modular manager built for large vinyl and CD collections.

Custom Metadata

Enrich album entries with custom fields: exact shelf position, purchase price and simplified styles.

Physical LED Locator

Select an album, styles, or artists on the screen, and the corresponding slots on your shelf light up thanks to LED strips.

Security & API Proxy

Proxy architecture with Apache/Nginx. Personal API tokens and credentials are never exposed to client browsers.

Decoupled Architecture

A clean NPM workspace monorepo separating UI components, state management, hardware drivers, and data plugins.

Portable Backups

Export and restore full collection archives with metadata and cover artwork in portable ZIP packages.

Find your records in the blink of an eye

Let TropoDisc control the LED strips of your shelves!

  • Immediate visual indication of the selected album, filtered styles, or filtered artists.
  • Direct HTTP integration with lightweight ESP32 firmware.
Shelf Active LED: 310, 314
Iron Maiden Powerslave
Metallica Master Of Puppets
Emilie Simon Mue
Léo Ferré Et... Basta!
Ratt Out Of The Cellar
Agar Agar Cardan
Magma Köhntarkösz

LED-based location simulation

Clean & decoupled structure

Modular components organized as independent NPM packages and data plugins.

apps/tropodisc

React Application

Primary client application for collection browsing.

packages/core

@tropo/core

State management with Zustand, caching, and normalizers.

packages/react

@tropo/react

Reusable UI components.

packages/leds

@tropo/leds

HTTP client for LED strip hardware communication.

plugins/discogs

@tropo/discogs

Discogs API integration plugin.

Quick Start

Run TropoDisc locally or deploy via Docker.

Local development setup Bash
# 1. Clone repository and install dependencies
git clone https://github.com/esaracco/tropoatlas.git
cd tropoatlas
npm install

# 2. Configure environment variables
cp apps/tropodisc/.env.sample apps/tropodisc/.env

# 3. Launch development server
npm run dev