Resultado
Qué quedó funcionando
El resultado es un sistema que cubre todo el recorrido entre coach y atleta: desde el alta y la creación del plan hasta la ejecución de cada serie, el análisis del progreso y la renovación de la membresía.
Más que una app de rutinas, TR Fit funciona como la infraestructura operativa de un servicio de entrenamiento personalizado: reduce tareas manuales para el coach y le da al atleta una guía clara, consistente y accesible durante cada sesión.
El proyecto
TR Fit es una plataforma de entrenamiento personalizado que conecta el trabajo del coach con la experiencia diaria de sus atletas. Permite crear planes adaptados a cada persona, guiar y registrar entrenamientos incluso con conexión inestable, medir el progreso y centralizar la operación del coach desde un panel web.
El desafío
El proyecto no consistía solamente en mostrar una lista de ejercicios. Había que convertir una metodología real de entrenamiento en un producto capaz de:
- adaptar las rutinas al objetivo, nivel, disponibilidad, equipamiento, lesiones y tiempo de cada atleta;
- mantener el criterio profesional del entrenador dentro del proceso de personalización;
- acompañar una sesión completa en el gimnasio sin perder información ante cortes de conexión;
- traducir el rendimiento de cada semana en ajustes concretos de repeticiones, cargas y planificación;
- darle al coach herramientas para revisar rutinas, responder alertas y gestionar atletas, pagos y accesos desde un único lugar.
La solución
Diseñé el producto como tres aplicaciones conectadas:
- App móvil para atletas: onboarding, plan semanal, sesión guiada, registro de cargas, descansos, mediciones y evolución.
- Panel web para el coach: atletas, rutinas, ejercicios, alertas, actividad, membresías y seguimiento individual.
- Backend y base de datos: API, reglas de negocio, generación y validación de rutinas, sincronización de sesiones y procesos automáticos.
Esta separación mantiene una experiencia simple en el teléfono sin trasladar al cliente reglas sensibles como la progresión, la vigencia del acceso o la aprobación de una rutina.
Experiencia del atleta
- Onboarding en cinco etapas: datos personales, objetivo, experiencia, exigencia, días disponibles, duración, equipamiento, lesiones y medidas corporales.
- Inicio personalizado con la sesión del día, semana de periodización, métricas de constancia y pasos diarios.
- Sesión en modo guiado o rápido, con videos técnicos, objetivos de repeticiones o tiempo, peso sugerido, RPE, calentamiento, dropsets y descansos.
- Temporizador en segundo plano, notificaciones y Live Activity en iOS (pantalla bloqueada y Dynamic Island).
- Cambio de ejercicio cuando una máquina no está disponible y comunicación de dolor o molestias al coach.
- Registro de tests de fuerza, marcas personales y percepción de fatiga.
- Resumen compartible del entrenamiento con volumen, cumplimiento, duración y nuevos récords.
- Seguimiento de fuerza, medidas corporales, peso, constancia e historial de sesiones.
Herramientas para el coach
- Dashboard con indicadores operativos y accesos rápidos.
- Alta, aprobación, edición y seguimiento de atletas, con vista individual de perfil, sesiones, medidas, rutina y membresía.
- Cola de rutinas pendientes de revisión antes de publicarlas al atleta.
- Editor de rutinas activas y catálogo de ejercicios con grupos musculares, equipamiento, nivel y videos técnicos.
- Alertas por dolor, falta de equipamiento y vencimientos, con acciones que aplican cambios temporales o inician una nueva rutina.
- Registro de pagos, pausas, reactivaciones y vencimientos de membresías.
- Historial de actividad y auditoría de acciones administrativas.
Decisiones de producto y arquitectura
Personalización con criterio del entrenador
Las rutinas parten de plantillas reales definidas por el coach. La IA interviene únicamente cuando hace falta adaptar ejercicios, disponibilidad, lesiones o duración. La respuesta se genera con una estructura tipada, se valida con Zod y atraviesa reglas determinísticas sobre días, ejercicios permitidos, grupos musculares y volumen. El resultado queda pendiente de revisión humana antes de activarse: la IA funciona como un ajustador controlado, no como una caja negra.
Generación asíncrona y tolerante a fallos
La creación o regeneración de una rutina se procesa mediante una cola en PostgreSQL. Un worker toma cada trabajo de forma atómica, aplica reintentos con espera y recupera tareas interrumpidas por reinicios o despliegues. Esto evita dejar perfiles incompletos cuando un proveedor externo tarda o falla.
Sesiones preparadas para conexiones inestables
Durante el entrenamiento, cada serie se guarda primero en el dispositivo. Los registros usan identificadores únicos, se envían al servidor cuando hay conexión y se reconcilian al reabrir la app. Si el atleta termina sin internet, la sesión se cierra localmente y la sincronización se completa más tarde: una mala señal en el gimnasio no bloquea la experiencia ni borra trabajo registrado.
Progresión automática basada en cumplimiento
El backend evalúa las sesiones completadas y ejecuta una progresión semanal. Según cumplimiento, tipo de ejercicio y ciclo de repeticiones, el sistema puede avanzar de semana, ajustar repeticiones o incrementar cargas. Las semanas de RM y AMRAP se tratan como hitos específicos dentro de la periodización.
Acceso y membresías como conceptos separados
La aprobación de una persona y la vigencia de su membresía se modelan por separado. Los pagos extienden el acceso de forma transaccional, procesos programados detectan vencimientos y generan avisos, y se contemplan pausas por lesión o vacaciones reanudando luego el tiempo restante.
Calidad y alcance técnico
- Más de 100 handlers de API organizados por dominio, protegidos por autenticación y roles.
- 56 migraciones SQL para evolucionar el modelo de datos de forma incremental.
- Más de 170 archivos de pruebas entre la app, el backend y el panel web.
- Validación de entradas, rate limiting, refresh tokens, almacenamiento seguro y auditoría administrativa.
- Builds móviles para iOS y Android, actualizaciones OTA y despliegue web contenerizado.
Ver stack tecnológico
← Volver a todos los casosPlataforma full-stack para crear, ejecutar y supervisar planes de entrenamiento personalizados desde una app móvil y un panel web.