Floppy en Docker - Tracker media autohospedado estilo Trakt

Floppy | Media Tracking | Docker | Self-Hosted | Trakt Alternative | Movies TV Music Podcasts Books

Floppy en Docker: Tracker media autohospedado Trakt-killer con movies, TV, anime, manga, libros, c贸mics, juegos, boardgames, m煤sica, podcasts, Plex sync, Last.fm, Pocket Casts, listas compartidas, estad铆sticas recap-style, multi-usuario OIDC, REST API, MCP server, todo en uno 馃幀馃摵馃幍馃摎馃幃

Floppy es un tracker media autohospedado dise帽ado por quien echa de menos Trakt. Un proyecto 煤nico: historial unificado de pel铆culas, series, anime, manga, libros, c贸mics, juegos, boardgames, m煤sica y podcasts en una sola librer铆a. Sync Plex, Last.fm, Pocket Casts. Estad铆sticas recap-style. Listas compartidas con RSS. Multi-usuario OIDC. Descubre personalizadas. REST API + MCP server. SQLite o PostgreSQL. Zero suscripci贸n. AGPL-3.0 open source. Production-ready en Docker.

¿Qu茅 es Floppy en Docker?

Floppy es un tracker media autohospedado all-in-one que unifica pel铆culas, series, anime, manga, libros, c贸mics, juegos, boardgames, m煤sica y podcasts en una sola librer铆a, directorio y historial, con sincronizaci贸n Plex/Jellyfin/Emby, Last.fm, Pocket Casts, listas compartidas, estad铆sticas recap-style, descubrimiento personalizado, multi-usuario OIDC, REST API + MCP server, todo ejecut谩ndose en Docker bajo tu control total sin dependencias cloud. La alternativa Trakt profesional que ped铆as.

Propuesta clave: Trakt replacement self-hosted. Historial unificado (pel铆culas, TV, anime, manga, books, comics, games, boardgames, music, podcasts). Progress tracking ("Time Left"). Unified history feed scaneable. Recap-style statistics con custom date ranges. Public shareable lists con RSS feeds. Smart lists con reglas (collection status, release state, platform, origin, author, tags). Descubrimiento personalizado (genre, studio, cast, tag affinity). Collection/owned media (source, resolution, HDR, format, codec). Plex full library import + watchlist + ratings sync. Pocket Casts account sync (not one-shot import). Last.fm live polling. Radarr/Sonarr scheduled sync. Jellyseerr webhook auto-add. Import desde Trakt, Simkl, MyAnimeList, AniList, Kitsu, Steam, Goodreads, StoryGraph, IMDb, HowLongToBeat, Grouvee. Anime-specific handling (proper routing). Episode detail pages con scoring individual. Barcode/ISBN scanning libros desde foto. Multi-user OIDC + social login. TOTP authenticator + recovery codes. Now-playing card desde Plex/Jellyfin/Emby. REST API /api/v1 + MCP server. Scheduled backups + export. iCalendar feeds. Apprise notifications. CSV export/import. SQLite o PostgreSQL. Docker integrated. AGPL-3.0 open source. Production-ready.

Para media enthusiasts: Librer铆a unificada. Sync autom谩tico. Stats bonitas. Compartir sin upload. Control total.

Caracter铆sticas principales

Librer铆a unificada

Movies, TV, anime, manga, books, comics, games, boardgames, music, podcasts — todo en uno.

Progress tracking

Time Left view. Sabe qu茅 ver despu茅s. Episodios pendientes. Libros en lectura. M煤sica escuchada.

Historial unificado

Feed filtrable. Mes a mes. Genres, media-type filters. Cleanup duplicados. Delete flow.

Estad铆sticas recap-style

Refresh expl铆cito. Compare mode. Custom date ranges. Top talents. Per-type splits. Per-author stats.

Listas compartidas

Public + private. Custom slugs. Public profiles. RSS/JSON feeds. Smart-list rules. Completion %. Recomendaciones con aprobaci贸n.

Sync autom谩tico

Plex library, watchlist, ratings. Pocket Casts account. Last.fm polling. Radarr/Sonarr. Jellyseerr webhooks.

Descubrimiento

Personalizado (genre, studio, cast, tag affinity). Not-interested feedback. Hide. Background refresh.

Colecciones

Track f铆sico/digital. Copy-level detail (source, resolution, HDR, format, codec, bitrate). Filters.

Anime handling

Anime vs TV separaci贸n. Anime-specific season/episode nav. Grouped-anime routing. Franchise navigation.

Podcasts nativos

Podcast + episode pages. Episode-level tracking. Mark-all-played. Pocket Casts live sync (not import).

M煤sica nativa

Artist + album pages. Track-level history. Play-count stats. Listening-time. MusicBrainz metadata. Discography sync.

Libros + lectura

Barcode/ISBN scanning. Percentage-based progress. Top-authors stats. Resilient imports. Goodreads/StoryGraph/Hardcover.

Requisitos del sistema

  • Docker & Docker Compose v2+
  • 2 GB - 4 GB RAM m铆nimo (muy ligero, Python app)
  • 5 GB - 50+ GB espacio disco (seg煤n librer铆a + media)
  • Puerto TCP: 8000 (web Floppy)
  • CPU: 2+ cores (app Django ligera)
  • SQLite (bundled, por defecto)
  • Redis (sessions + background tasks)
  • Python 3.10+ (en imagen Docker)
  • Opcional: PostgreSQL (para escalabilidad)
  • Opcional: API keys (TMDB, TVDB, MAL, IGDB, Steam, BGG, Last.fm, Trakt, etc)
API keys opcionales pero recomendados: TMDB (movies/TV), TVDB (TV/anime), MAL (anime), IGDB (games), STEAM (game imports), Last.fm (music), Pocket Casts (podcasts sync). Sin ellos, metadata manual o vac铆a.
Performance: Django app muy ligera. SQLite suficiente hasta grandes librer铆as (50k+ items → considera PostgreSQL). Redis para sessions/background tasks esencial.

Instalaci贸n con Docker Compose

Paso 1: docker-compose.yml (SQLite + Redis)

version: '3.8' services: floppy: image: ghcr.io/dannyvfilms/floppy:latest container_name: floppy restart: unless-stopped depends_on: redis: condition: service_healthy environment: - SECRET=change_me_to_a_long_random_string - REDIS_URL=redis://redis:6379 - REGISTRATION=True - DEMO_ACCOUNT_ENABLED=False - TZ=Europe/Madrid - TMDB_API=your_tmdb_api_key volumes: - floppy_db:/floppy/db ports: - "8000:8000" redis: image: redis:8-alpine container_name: floppy-redis restart: unless-stopped command: ["redis-server", "--appendonly", "yes"] healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 3s retries: 10 volumes: - redis_data:/data volumes: floppy_db: redis_data:

Paso 2: Configurar variables importantes

# SECRET - REQUERIDO, cambiar a string aleatorio openssl rand -hex 32 # TMDB API - Gratis, recomendado # https://www.themoviedb.org/settings/api # TZ - Tu zona horaria # Europe/Madrid, America/New_York, Asia/Tokyo, etc # REGISTRATION - True primera vez, False despu茅s

Paso 3: Iniciar Floppy

# Guardar compose como docker-compose.yml docker compose up -d # Espera ~10 segundos para que inicie docker compose logs -f floppy # Deber铆a ver "Starting Gunicorn" mensajes

Acceder a Floppy

馃幀 Floppy Web UI: http://localhost:8000

Setup inicial (primer acceso)

  1. Abre http://localhost:8000
  2. Sign up → crear usuario (REGISTRATION=True)
  3. Setup librer铆a (add movies, TV, anime, books, music, podcasts folders si aplica)
  4. Linkear integraciones (Plex, Last.fm, Pocket Casts, etc) en Settings → Integrations
  5. Configurar metadata providers (TMDB, TVDB, etc) en Settings
  6. ¡Empezar a trackear!
  7. Cuando acabes, cambiar REGISTRATION=False en compose y redeploy
馃挕 Desde otros dispositivos: Usa la IP de tu servidor:
http://192.168.1.100:8000
Para obtener tu IP: hostname -I

Primeros pasos y workflows

1. Crear cuenta y setup inicial

  1. Sign up con email/password (REGISTRATION debe ser True)
  2. Elijes username
  3. Settings → Preferences → customize home, stats defaults, display preferences

2. Agregar librer铆as

  1. Dashboard → Add Library (si tienes media local)
  2. Selecciona media type: Movies, TV Shows, Anime, Manga, Books, Comics, Games, Board Games, Music, Podcasts
  3. Path a directorio media (ejemplo: /mnt/media/movies)

3. Importar desde Trakt

  1. Settings → Integrations → Import → Trakt
  2. OAuth login Trakt (si perfil privado: configura OAuth primero)
  3. Elige qu茅 importar: watchlist, history, ratings, lists
  4. Import corre en background

4. Linkear Plex

  1. Settings → Integrations → Plex
  2. Plex token (encuentra en Plex settings)
  3. Selecciona librer铆as Plex a syncear
  4. Full library import + watchlist + ratings sync autom谩tico

5. Linkear Last.fm

  1. Settings → Integrations → Last.fm
  2. API key Last.fm
  3. Live polling: historial Last.fm se sincroniza autom谩tico
  4. Ver music stats bonitas

6. Linkear Pocket Casts

  1. Settings → Integrations → Pocket Casts
  2. Email + password Pocket Casts
  3. Account sync: historial podcasts se sincroniza autom谩tico (not file import)

7. Empezar a trackear

  1. Dashboard → Search pel铆cula/serie/manga/libro/m煤sica
  2. Add to watching/reading/playing/listening
  3. Mark as watched/read/played/listened
  4. Rate (1-10 stars)
  5. View en History, aparece en stats, en lists si creaste smart-lists

8. Crear listas

  1. Lists → Create List (manual) o Smart List (rules)
  2. Manual: agregar items manualmente
  3. Smart: criterios (collection status, release date, genre, author, tags, etc)
  4. Public/Private, custom slug, RSS feed autom谩tico

9. Estad铆sticas

  1. Stats → browse historial recap-style
  2. Custom date range, per-type splits, top talents, listening-time, pages-read
  3. Compare mode con otros usuarios (si multi-user)

Casos de uso

  • Reemplazo Trakt profesional: Librer铆a unificada. Tracking autom谩tico. Stats bonitas. Listas compartidas.
  • Media enthusiasts multi-tipo: Movies + TV + anime + manga + books + music + podcasts + games en uno.
  • Sync autom谩tico homelabs: Plex sync + Last.fm + Pocket Casts + Radarr/Sonarr. Todo autom谩tico.
  • Descubrimiento personalizado: Recommendations mejoran con uso. Affinity genre/studio/cast/tags.
  • Homelabs multi-usuario: OIDC support. Perfiles p煤blicos. Listas compartidas. Stats comparadas.

Gesti贸n y mantenimiento

Ver estado

docker compose ps

Ver logs

docker compose logs -f floppy docker compose logs -f redis

Detener Floppy

docker compose down

Actualizar versi贸n

docker compose pull docker compose up -d

Backup SQLite

docker cp floppy:/floppy/db/db.sqlite3 ./floppy-backup.sqlite3

Restore SQLite

docker cp ./floppy-backup.sqlite3 floppy:/floppy/db/db.sqlite3 docker compose restart floppy

Export datos (CSV)

# Settings → Scheduled backups # O Settings → Export Now # CSV compatible Yamtrack/Trakt

Monitorear consumo

docker stats floppy redis # T铆picamente: # floppy: 200-600MB RAM (muy ligero) # redis: 50-200MB RAM

Comparativa con alternativas

vs Trakt (official)

Floppy gana: Self-hosted, open source, sin cloud, sin paywalls, features m谩s ricas (sync autom谩tico, podcasts nativos). Trakt gana: UI pulida, features premium, comunidad grande (pero paywall y cierre API).

vs Yamtrack

Floppy: Fork de Yamtrack que divergi贸 sustancialmente. Floppy agrega muchas features (music, podcasts natives, Plex sync, better anime). Datos CSV compatible. Old `/yamtrack/db` mounts a煤n resolven en image (backward compatible).

vs Simkl

Floppy gana: Self-hosted, open source. Simkl gana: Cloud (m谩s c贸modo), mobile apps, cloud features.

Mejor para: Enthusiasts total control. Multi-librer铆a unified. Sync autom谩tico. Self-hosted. Open source. Stats bonitas. Cero suscripci贸n.

Comentarios

Entradas populares de este blog

C贸mo Instalar y configurar SERVIDOR VPN WIREGUARD en MIKROTIK 馃攼 #VPN #Wireguard #Mikrotik #RouterOS

C贸mo instalar y configurar DSM SYNOLOGY 7.2.2 en PC | Gu铆a completa, instalaci贸n, RAID 1, SMB

C贸mo INSTALAR y CONFIGURAR OpenVPN en MIKROTIK. Gu铆a completa paso a paso.