Saltar al contenido
CasosDeporte & Fitness · Asesoría online de entrenamiento y nutrición
Team Garin logo

El alumno ya registraba cada serie; faltaba que la app le diera un motivo para volver mañana

Team Garin es una asesoría online de entrenamiento y nutrición: el equipo prescribe, el alumno entrena en el gimnasio y lo registra en el celular. Epicora construyó esa plataforma desde la primera versión — y, antes de reconstruirla, midió el uso directamente en la base de datos. Al 02/09/2026 había 1.168 alumnos registrados, 416 mil series cargadas con peso y repeticiones y la mitad de la base entrenando cada semana. El entrenamiento había prendido; lo que lo rodeaba, no. La nueva generación, Team Garin Pro, nació de ese retrato: comunidad y gamificación dentro de la app, entrenamiento que funciona sin señal en el gimnasio, seguimiento recurrente para el equipo — y toda la base migrada por lotes, con el historial intacto y sin sacar la asesoría del aire. Debajo, una base pensada para atender a muchas asesorías.
La app del alumno: entrenamiento, puntos y comunidad
Cliente
Team Garin (asesoría deportiva online)
Lo que hicimos
Plataforma de asesoría deportiva: app del alumno (entrenamiento, nutrición, comunidad, gamificación, cuestionarios) y panel web del equipo (planes, seguimiento, moderación), sobre una base multi-asesoría con cobro recurrente — más la migración de la base de la generación anterior
Plataforma
App iOS y Android (React Native · Expo · base local RxDB) · Panel web (React + Vite) · API NestJS · MongoDB · AWS (Elastic Beanstalk, S3) · Stripe · Expo Push
La prueba, en números
1.168 alumnos
registrados en la plataforma al 02/09/2026 — y, desde octubre, toda la base opera en la app nueva
416 mil series
registradas con peso y repeticiones (99% completas) al 02/09/2026, migradas con los mismos identificadores
49% · 62%
de la base entrenó en la semana y en el mes, al 02/09/2026: el uso que heredó la nueva generación
444 alumnos activos
en Team Garin Pro, la app nueva, al 23/10/2026
01

El punto de partida

Team Garin vende acompañamiento: entrenador y nutricionista arman el plan, el alumno lo ejecuta y el equipo ajusta. La primera generación de la plataforma, también construida por Epicora, cumplía con eso — y la base de datos mostraba que cumplía bien. Al 02/09/2026 había 37.237 entrenamientos registrados, con un promedio de 7 ejercicios y 11 series por sesión y el peso completado en el 99% de las series. El alumno no marcaba asistencia: registraba lo que levantaba. Del otro lado, un equipo de 8 personas operando el día a día hacía unas 1.220 revisiones de plan por mes.

La medición se hizo justamente para encontrar lo que el uso no mostraba — y el producto anterior no tenía telemetría de navegación, solo lo que queda registrado en la base, así que cada número es un piso. Aun así, los huecos aparecieron claros. Y había un límite de arquitectura: la primera generación corría una instalación y una base de datos por asesoría, con app propia en la tienda. Le servía a Team Garin; no le servía a la siguiente asesoría.

Lo que trababa
  • El 39% de la base estaba parada — 292 alumnos inactivos o que nunca entrenaron — y ningún disparador automático para traerlos de vuelta: las dos únicas notificaciones del sistema salían cuando el equipo publicaba un plan.
  • La baja se decidía en el primer mes: el 49% de quienes se fueron nunca registró un entrenamiento. El desafío no era retener a quien entrenaba — era activar a quien llegaba.
  • El diario de comidas no prendió: solo el 25% de quienes tenían plan registraba alguna comida en el mes, y en caída, y el 86% de las dietas diarias que el sistema pregeneraba nunca recibía un registro.
  • Funciones sin uso y datos que faltaban: el módulo de cuestionarios tenía cero respuestas, el modelo de datos no vinculaba al alumno con su entrenador o nutricionista, y la percepción de esfuerzo había dejado de guardarse sin que nadie lo notara.
El retrato de la base: el entrenamiento prendió, el resto no
02

El punto de inflexión

La decisión fue diseñar la nueva generación sobre el retrato, no sobre una lista de deseos. El núcleo — el entrenamiento registrado serie por serie — quedó intacto y ganó lo que le faltaba alrededor. El alumno que se aleja necesita un motivo para volver que no dependa de que el equipo se acuerde de él: de ahí la gamificación, que puntúa entrenamiento completado, récord personal superado, comida registrada, cuestionario respondido y publicación en la comunidad, con logros por racha de días, volumen y antigüedad y un ranking general y trimestral; y la comunidad, donde el alumno publica su entrenamiento, comparte el logro y recibe likes y comentarios de quienes entrenan con él.

Cada hallazgo de la base se convirtió en una decisión en el sistema nuevo. La dieta del día dejó de pregenerarse para todos los alumnos y ahora nace en el primer registro o la primera lectura. El vínculo del alumno ganó profesionales responsables, y el panel pasó a filtrar la cartera por colaborador. El entrenamiento volvió a guardar la percepción de esfuerzo, y el cuestionario pasó a ser seguimiento recurrente — semanal, quincenal o mensual, con envío masivo y revisión del equipo. Y la comida registrada y el cuestionario respondido ahora suman puntos: el comportamiento que el producto anterior no reforzaba ganó refuerzo.

La tercera decisión fue de arquitectura: una plataforma, muchas asesorías. Cada registro lleva la asesoría a la que pertenece, y el aislamiento no depende de que cada consulta lo recuerde — un plugin de base de datos inyecta el filtro en toda lectura y escritura, y una consulta sin asesoría definida falla en lugar de devolver los datos de todos. Encima de eso: cobro recurrente vía Stripe, alta self-service de asesorías, tema y logo por espacio de trabajo y alumno con una sola cuenta en más de una asesoría. Team Garin es el primer espacio de trabajo; la base para el siguiente ya está en el código.

La migración, hecha por lotes

La app nueva es otra ficha en la tienda: nadie recibe una actualización, cada alumno tiene que descargarla. Por eso la base no cambió de una vez. La migración corrió por lotes definidos por la asesoría, con el sistema anterior atendiendo a quien todavía no había cambiado. Cada lote pasa por un ensayo en seco antes de escribir, llega con los mismos identificadores de la base anterior — el historial de entrenamiento, dieta y peso apunta a los mismos registros, sin remapeo — y con la misma contraseña, y termina con una reconciliación automática colección por colección. Los lotes registrados cerraron sin divergencias, y en octubre toda la base ya operaba en la app nueva.

Del hallazgo a la decisión: lo que el dato cambió en el sistema nuevo
03

Lo que entregamos

01

01 · La app del alumno, que funciona sin señal en el gimnasio

Entrenamiento, plan de alimentación, peso e historial viven en el dispositivo, en una base local sincronizada con la API: el alumno entrena y registra sin conexión, y todo sube cuando vuelve la señal — incluidos los puntos, porque el crédito ocurre en el servidor cuando llega la sincronización. Durante el entrenamiento, el iPhone muestra la sesión en la pantalla bloqueada; en la pantalla de inicio, un widget con el mapa de calor de los entrenamientos. La última carga aparece en la prescripción, el récord personal se detecta serie por serie y la evolución de cada ejercicio se vuelve gráfico. Al terminar, el entrenamiento se convierte en una imagen lista para compartir.

02

02 · Gamificación con reglas de contabilidad

Puntos por entrenamiento completado, récord superado, comida completa, cuestionario respondido y publicación en la comunidad, con el valor de cada uno definido por la asesoría; logros automáticos (racha de días, volumen, récords, entrenamientos, comidas, cuestionarios, antigüedad) y manuales, otorgados por el equipo; ranking general y trimestral, con cada trimestre cerrado y guardado automáticamente. Debajo, un libro mayor inmutable: los puntos nunca se borran ni se editan, y una corrección es un asiento de reversión, como en la tarjeta. Cambiar la tabla de puntos no reescribe el pasado, el mismo entrenamiento nunca puntúa dos veces y dejar de entrenar reinicia la racha, pero no quita puntos.

03

03 · La comunidad de la asesoría, con moderación de verdad

Feed con texto y hasta 4 fotos por publicación, likes, comentarios, publicaciones fijadas por el equipo y logros compartidos desde la app. Los likes llegan agrupados, como en Instagram, y el alumno activa o desactiva cada categoría de notificación — comunidad, gamificación, seguimiento, cuenta. El equipo modera desde el panel: cada denuncia entra en una cola de Contenido reportado, con acciones para ocultar, mantener o restringir el acceso del alumno a la comunidad; y el alumno puede bloquear a otro alumno, como exige la App Store a las apps con contenido de usuarios. Las fotos de las publicaciones son privadas y solo se abren con un enlace firmado y temporal.

04

04 · El panel del equipo: toda la cartera y cada alumno por dentro

El panel abre en un dashboard operativo: alumnos activos frente al límite del plan, cuestionarios esperando revisión, denuncias por moderar y el podio del ranking. Al abrir un alumno, el equipo entra en el Modo Alumno — resumen, entrenamiento, nutrición, cuestionarios, puntuación, material de apoyo y suscripción en un solo lugar. El cuestionario de seguimiento sale recurrente y masivo, con comparativo de fotos de evolución; los planes salen de plantillas de la asesoría; y cada alumno tiene sus profesionales responsables, el corte que faltaba para ver la cartera de cada entrenador y nutricionista.

04

Cómo lo garantizamos

Una migración que solo escribe después de ensayar

El script de migración lee la base anterior y nunca escribe en ella: antes del primer dato nuevo, volver atrás es solo reabrir el sistema anterior. Cada ejecución empieza en modo seco, que muestra lo que va a pasar y se detiene ante cualquier bloqueo — correo que ya existe en la plataforma, identificador numérico ocupado, ítem de catálogo faltante. La escritura es idempotente (correrla de nuevo reescribe lo mismo, no duplica) y termina con una reconciliación que cuenta, colección por colección, lo que llegó al destino.

La suciedad del legado, resuelta sin perder un documento

El ensayo contra la base real encontró lo que la base anterior toleraba y la nueva no: 38 correos repetidos en 115 cuentas, restos de invitaciones reenviadas. Ningún correo tenía dos cuentas vivas; la cuenta activa se quedó con la dirección, los restos ya borrados recibieron una dirección reservada que nunca se entrega, y cada documento mantuvo el mismo identificador. Lo mismo valió para perfiles huérfanos y numeración repetida: cada corrección quedó en el informe de la migración, nada se descartó en silencio.

Datos de salud cerrados por defecto

Fotos de evaluación, documentos y fotos de publicaciones viven en almacenamiento privado, por asesoría y por usuario, y solo se abren con enlaces firmados cuya duración depende de la sensibilidad — 5 minutos para fotos de cuestionario, 15 para documentos. La API verifica que el archivo citado pertenezca a quien lo envía, y el aislamiento entre asesorías se impone en el acceso a la base, no pantalla por pantalla. La eliminación de cuenta ocurre dentro de la app, como exigen las tiendas, y los errores de producción llegan a un monitoreo propio.

05

El resultado

El número que más importa en este caso todavía se está escribiendo — por eso viene con fecha. Al 02/09/2026, aún en la generación anterior, la mitad de la base entrenaba cada semana, unos 156 alumnos por día, con ~11 entrenamientos por mes por alumno activo. Ese es el piso: el uso que ya existía sin comunidad, sin gamificación y sin ningún disparador para el alumno parado. Desde octubre, toda la base de Team Garin entrena y publica en Team Garin Pro, publicada en la App Store y en Google Play: al 23/10/2026 eran 444 alumnos activos en la app nueva y 204 publicaciones en la comunidad.

Y la plataforma que hoy sostiene la asesoría no es una app de una sola asesoría. Aislamiento por espacio de trabajo, cobro recurrente, alta self-service y catálogo de temas ya están en el código, con Team Garin como primer inquilino. El próximo paso es convertir esa base en producto para otras asesorías — sobre la operación real de una asesoría con más de mil alumnos registrados, no sobre una demo.

Los números de uso, con fecha de corte
Contacto

¿Tus alumnos registran el entrenamiento pero no tienen un motivo para volver mañana?

Epicora construye la plataforma de tu operación a partir del uso medido — una app que funciona en el gimnasio, gamificación y comunidad con reglas de verdad — y con la base lista para el día en que se convierta en producto.

Contáctanos

Contacto

Conversemos sobre tu proyecto

Cuéntanos qué necesitas resolver. Respondemos rápido, con gente que entiende de tecnología y de negocio.

¿Prefieres hablar directamente?

Elige el canal que prefieras. Respondemos rápido, en horario comercial.

De la primera conversación al go-live: eficiencia, seguridad e innovación.