TropoAtlas Logo TropoAtlas
Free software for your media collections · GPLv3

Organize, explore, and illuminate your collections

TropoAtlas bridges the gap between your digital catalog and physical shelves. Manage your music, movies, and books with dedicated applications, and locate items instantly on your shelves with connected IoT LED strips.

TropoAudio — Music Collection
tropoaudio.esaracco.fr
TropoCine — Film Collection
tropocine.esaracco.fr
TropoBiblio — Book Collection
tropobiblio.esaracco.fr

Tailored managers for each media type

Each application in the TropoAtlas suite is designed to meet the specifics of its medium, while relying on a consistent design system and a robust foundation.

TropoAudio

Vinyl & CDs Discogs Sync
TropoAudio Interface Snapshot

Album collection manager for music lovers. Synchronize your vinyl records and CDs from Discogs, and illuminate your albums in real time on your shelves.

  • Instant search, sorting, and multi-criteria filters by artists and styles
  • Custom metadata (shelf location, styles, price, and rating)
  • Real-time physical LED shelf locator

TropoCine

DVDs & Blu-rays TMDB Sync
TropoCine Interface Snapshot

Film collection manager for passionate cinephiles. Synchronize your movies and lists from TMDB, and quickly locate your DVDs and Blu-rays on your shelves.

  • Instant search, sorting, and multi-criteria filters by directors, cast, and genres
  • Custom metadata (shelf location, price, and rating)
  • Real-time physical LED shelf locator

TropoBiblio

Books Inventaire.io Sync
TropoBiblio Interface Preview

Book collection manager for passionate readers. Synchronize your books from Inventaire.io, and locate your books in real time on your shelves.

  • Instant search, sorting, and multi-criteria filters by authors and genres
  • Custom metadata (shelf location, genres, price, and rating)
  • Real-time physical LED shelf locator

Physical shelf location with connected LEDs

The signature innovation of TropoAtlas is the tangible link between your digital database and your physical living space.

Find your items in the blink of an eye

Addressable LED strips mounted along your shelves illuminate the locations corresponding to selected works or active filters. No more tedious searching on spines!

  • 1 ESP32-S3 Mini Firmware: Ultra-lightweight C++ firmware (firmware/led-controller) driving WS2812B addressable LED strips via local HTTP requests.
  • 2 Centralized Hardware Driver: Shared standalone package (@tropo/leds) orchestrating colors, brightness, and focus blink effects.

💡 Designed for Makers: Complete firmware source code and wiring schematics are open-source and included in the repository, ready to flash onto an ESP32 microcontroller.

Shelf Active LED: 12
Ferré Et... Basta !
Maiden Powerslave
Anspach Queen of Montreuil
Dupieux Yannick
Kropotkine L'Entraide
Perec Un homme qui dort

Interactive simulation (click any item)

Built on solid software principles

TropoAtlas is engineered as a clean, decoupled monorepo prioritizing privacy, extensibility, and developer ergonomics.

🔒

Local-First & Privacy

Zero tracking, zero analytics, zero external account lock-in. Your collection data remains strictly on your machine or private server.

📦

Clean NPM Monorepo

Shared state management (@tropo/core), UI tokens & components (@tropo/react), and hardware drivers (@tropo/leds).

🔌

Extensible Plugins

Data providers (Discogs, TMDB, Inventaire.io) are completely isolated in domain plugins, ensuring frontends remain provider-agnostic and easily swappable.

MONOREPO WORKSPACE ARCHITECTURE NPM WORKSPACES
tropoatlas/
├── apps/
│   ├── tropoaudio/          # Music collection manager (Discogs, LED locator)
│   ├── tropocine/           # Film collection manager (TMDB, LED locator)
│   └── tropobiblio/         # Book collection manager (Inventaire.io, LED locator)
├── packages/
│   ├── core/                # Storage abstraction, Zustand state store, export/backup
│   ├── react/               # Shared React dialogs, tokens, reusable UI primitives
│   └── leds/                # Standalone HTTP client for addressable LED strips
├── plugins/
│   ├── audio/discogs/       # Discogs API data provider (@tropo/discogs)
│   ├── cine/tmdb/           # TMDB API data provider (@tropo/tmdb)
│   └── biblio/inventaire/   # Inventaire.io API data provider (@tropo/inventaire)
└── firmware/
    └── led-controller/      # ESP32-S3 Mini C++ firmware for WS2812B shelf strips

Run locally or deploy in production

All TropoAtlas applications build into purely static, ultra-fast web bundles.

Run with Docker Compose

Launch TropoAudio (port 3000), TropoCine (port 3001), and TropoBiblio (port 3002) concurrently with a single command:

TERMINAL BASH
# Build/rebuild and start all apps
docker compose up --build

# Or launch a single application
docker compose up --build tropoaudio
docker compose up --build tropocine
docker compose up --build tropobiblio

Local Monorepo Development

Clone the repository, install monorepo dependencies, and start the Vite development servers:

TERMINAL BASH
git clone https://github.com/esaracco/tropoatlas.git
cd tropoatlas
npm install

# Run development servers
npm run dev:audio
npm run dev:cine
npm run dev:biblio