Saltar al contenido
sreynosolabs
Volver a proyectos

Producto propio · app de entrenamiento

Training Companion

Una app de entrenamiento que funciona sin señal y deja tu historial listo para que una IA te ajuste la rutina.

Es una app privada: te la muestro en una videollamada.

Entreno · lunes

  • Sentadilla 3×8 ¿60 o 65?
  • Press banca ¿lo de la vez pasada?
  • Molestia en el hombro (anotar)

60 × 8 · 60 × 8 · 55 × ?

??

Antes
Sesión del día en Training Companion, en tema oscuro y con una cuenta de ejemplo: el ejercicio Incline DB Press con su objetivo (3 × 8–12, RIR 1–2), el cuadro «Última vez» con las series de la sesión anterior (26 × 11, 26 × 10 y 26 × 9) y su mejor registro reciente, la serie 1 de hoy ya marcada (26 kg × 12, RIR 1) y el editor de la serie 2 con peso, repeticiones y RIR.Después
Antes:
Notas sueltas, sin progreso ni historial.
Después:
Cada serie registrada y el progreso calculado solo.

El problema

Sin un registro ordenado, mientras entrenas no ves qué peso usaste la vez anterior, el progreso no se calcula y las molestias no quedan anotadas en ningún lado.

Tampoco había un resumen listo para compartir cuando un entrenador o una IA tenía que ajustar la rutina.

La solución

Una app que se instala en el celular y abre directo en la sesión del día. Cada ejercicio muestra lo que hiciste la vez anterior junto a lo que toca hoy, cada serie se marca con un toque y arranca sola el temporizador de descanso.

Entre sesiones muestra el progreso por ejercicio, los récords, las medidas y las molestias. Las rutinas se pueden armar con IA: descargas un prompt, se lo das a tu asistente favorito, pegas la respuesta, la previsualizas y la importas.

Además, una integración con un Custom GPT, construida y lista: lee el historial con una clave de solo lectura para que un "entrenador" tenga el contexto real sin copiarlo a mano.

El resultado

Es un producto propio en uso, con usuarios reales. Cada serie queda registrada con peso, repeticiones y esfuerzo, el progreso se calcula solo y el historial está listo para compartir.

El registro funciona aunque el gimnasio no tenga señal: nada se pierde y todo se sincroniza al volver la conexión.

En pantalla

Under the hoodDetalles técnicos

Stack

  • .NET 10 (minimal APIs)
  • EF Core 10 + PostgreSQL
  • React 19 + TypeScript
  • PWA con IndexedDB
  • Docker
  • xUnit, Vitest y Playwright
  • Offline-first: las escrituras pasan por una cola en IndexedDB que respeta el orden, junta ediciones repetidas y reintenta con espera creciente.
  • API idempotente con ids generados en el cliente: si una petición llega dos veces, devuelve el mismo resultado.
  • Historial inmutable: cada sesión guarda una copia de la rutina, así que publicar una versión nueva nunca altera lo ya entrenado.
  • Formato de rutina en Markdown con un bloque JSON, legible por personas y por modelos de lenguaje, con un parser tolerante a lo que suelen generar los asistentes.
  • Integración con un Custom GPT mediante Actions: un documento OpenAPI aparte expone solo endpoints de lectura, con una API key de solo lectura guardada como hash.
  • CI que despliega solo si pasan las pruebas de backend sobre PostgreSQL real, del frontend y E2E en Pixel 7 e iPhone SE.

¿Tu negocio necesita algo así?

Hablemos de tu proyecto
Siguiente proyectoFinanzasApp