Los proveedores aportan catálogo y candidatos de fuente; cola, identidad de generación, ciclo de vida del renderer y autoridad de interacción permanecen en el cliente.
Privado · desarrollo activo de producto · Sistemas multimedia
Slipmat
Un cliente multimedia centrado en la reproducción de medios propios y autoalojados, con la reproducción como modelo organizador entre fuentes, páginas y tipos de medio.
- Nicho
- Reproducción de medios locales y autoalojados
- Stack principal
- React 19 · TypeScript · Rust · Tauri v2 · WASM
- Fuentes
- Jellyfin + medios locales nativos
- Enfoque
- Autoridad de reproducción, transparencia de señal, inteligencia musical
Vista del sistema
El estudio
Slipmat es un instrumento de reproducción para medios bajo tu control, que conecta bibliotecas de servidor y fuentes locales mediante un único modelo de interacción.
Jellyfin aporta datos de catálogo y candidatos de fuente, mientras el cliente gestiona cola, reloj, renderizador, estado de interacción e identidad del producto. Los archivos locales entran en el mismo modelo, dando a la aplicación un vocabulario de reproducción coherente entre tipos de fuente.
Estructura del sistema
La decisión arquitectónica central es hacer explícito el estado de reproducción.
Playback Rail es el instrumento temporal y escalar canónico para búsqueda y controles proyectados, manteniendo la interacción basada en tiempo dentro de un solo vocabulario.
El producto informa del camino de procesamiento y salida que puede verificar y nombra sus capacidades según esa evidencia.
BPM, tonalidad, energía y análisis espectral apoyan topología visual, shuffle y evidencia de transición, mientras los contratos por tipo de medio mantienen coherente el modelo de reproducción general.
Los proveedores aportan catálogo y candidatos de fuente; la autoridad de reproducción permanece en el cliente.
Diseño de producto e interacción
La interfaz hace observable el estado de reproducción en los puntos donde esa información favorece el control y la comprensión.
Formas de onda, buffering, telemetría de transición, letras, arte, espectros y superficies inmersivas son proyecciones coordinadas del mismo estado de reproducción. Una sola autoridad de acciones mantiene la interacción predecible entre superficies.
Las capacidades se clasifican por implementación de extremo a extremo. Las bases para futuros proveedores se documentan por separado de las capacidades publicadas, manteniendo precisos roadmap, superficie del producto y evidencia técnica.
Evolución reciente
La superficie del producto se ha ampliado mediante el mismo modelo de reproducción.
Los podcasts reutilizan la misma autoridad de reproducción y Rail que la música e incorporan capítulos, secciones, marcadores de anuncios, transcripciones, notas, perfiles de velocidad específicos del medio y retención offline.
Vídeo y Live TV aplican la misma disciplina a identidad de programa, canal y fuente, contratos de recuperación y ciclos de vida de sesión. La modernización también consolida autoridad y mantiene el feedback del Rail pasivo y respetuoso con el foco.
Detalle canónico de episodio, enriquecimiento, perfiles de velocidad independientes, descargas y retención offline usan semántica específica de podcast.
Audio, vídeo y directo usan contratos de recuperación específicos del medio y rutas de fallback compatibles.
La limpieza consolida controles, stores, capas de compatibilidad y guía para que el comportamiento actual tenga un propietario explícito.
Storybook, Vitest, Playwright y pruebas de límites aportan evidencia ejecutable junto a la documentación de diseño e ingeniería.
Lectura arquitectónica
El trabajo de endurecimiento actual está convirtiendo la dirección de dependencias prevista en política ejecutable del repositorio.
La arquitectura se ordena en contratos de dominio, planificadores y máquinas de estado deterministas, adaptadores y servicios, modelos de presentación y, finalmente, proyecciones de UI y plataforma. El trabajo activo de guardrails convierte esa dirección de dependencias en una regla verificable en vez de una convención.
La política activa de fronteras mantiene los primitives de bajo nivel apoyados en componentes fundacionales y fuera de los detalles del cliente Jellyfin o del estado de implementación de otros proveedores.
Reglas de promesas conscientes de tipos, TypeScript estricto, propiedad explícita y comprobaciones de generación dificultan que trabajo asíncrono obsoleto publique estado después de perder autoridad.
Un único SVG canónico genera proyecciones web y nativas con procedencia de fuente y tooling registrada, evitando identidades paralelas mantenidas a mano.
Enfoque de desarrollo
La arquitectura actúa como restricción creativa: prototipar la experiencia a fidelidad completa, observar su comportamiento y dar autoridad explícita a las interacciones probadas.
Un gesto de crossfade, una animación de forma de onda, un modelo de capítulos de podcast o una ruta de recuperación de Live TV pueden comenzar como un experimento enfocado en Storybook o una prueba de límites con medios realistas. Diseño, tiempo e interacción se desarrollan contra comportamiento ejecutable y después se documentan como intención de interacción.
Tipos estrictos, contratos de autoridad, comprobaciones de accesibilidad, trazas de rendimiento y pruebas automatizadas de regresión preservan los experimentos útiles. El ciclo de trabajo es asombro → prototipo → evidencia → invariante, dando al diseño exploratorio una forma técnica duradera.
Private repository · public case study focuses on product architecture and method