retrom
Plataforma auto-alojada para gestionar y ejecutar bibliotecas de juegos retro en el navegador mediante EmulatorJS y retrom-runtime. Arquitectura híbrida con backend Go y frontend Next.js, sin Docker Compose por defecto.
Ficha actualizada 22 sept 2026, 15:03 · upstream 22 sept 2026, 13:52 · release v0.0.77
Qué es retrom
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Retrom es una plataforma auto-alojada diseñada para centralizar la gestión de una biblioteca de juegos retro accesible directamente desde el navegador web. Permite a usuarios y amigos compartir colecciones, gestionar metadatos y continuar partidas guardadas sin necesidad de instalar emuladores locales en cada dispositivo. El sistema mantiene el estado del juego y los archivos de usuario separados por cuenta para garantizar la privacidad y la persistencia.
Técnicamente, combina un backend escrito en Go con una base de datos SQLite para la gestión de datos, y un frontend desarrollado con Next.js y React. La ejecución de juegos se delega a componentes externos como EmulatorJS y retrom-runtime, lo que permite soportar múltiples plataformas retro y motores clásicos sin incluir los emuladores binarios dentro del repositorio principal.
El despliegue requiere la construcción manual de imágenes OCI separadas para el backend (puerto 8080) y el frontend (puerto 3000). Aunque el proyecto soporta contenedores, no incluye un archivo Docker Compose por defecto, obligando al administrador a configurar la orquestación, el proxy inverso HTTPS y los directorios de persistencia manualmente para entornos de producción estables.
- Auto-alojar una biblioteca de juegos retro accesible vía navegador sin instalar emuladores locales.
- Gestionar metadatos, portadas y progreso de partidas entre dispositivos mediante cuentas compartidas.
- Importar bibliotecas existentes desde EmulationStation o Pegasus con deduplicación por hash.
- Configurar entornos de desarrollo para integrar nuevos núcleos (cores) de libretro o emuladores.
- Arquitectura modular separando backend Go y frontend Next.js en contenedores OCI.
- Soporte nativo para persistencia de estado y carga guardada dentro del navegador.
- Capacidad de importar bibliotecas externas con verificación de integridad mediante hashes.
- Interfaz adaptativa con modos específicos para PC, móvil e interfaces de TV.
- No incluye Docker Compose por defecto, requiriendo configuración manual de orquestación.
- Dependencia crítica del navegador Chrome para la ejecución de juegos en el cliente.
- Complejidad alta (HIGH) con requisitos de CPU y RAM específicos para entornos de producción.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Construir imágenes OCI ejecutando `make build-images`. Configurar proxy inverso HTTPS y directorios de persistencia manuales, ya que no hay Docker Compose por defecto. Requiere 4 núcleos CPU y 4GB RAM mínimo. Verificar compatibilidad de cores en docs/core-runtime-validation.md antes de producción.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.