V-Forge — Caso de Estudio

Plataforma de entrenamiento personalizado que convierte la planificación del gimnasio en una experiencia guiada: el atleta consulta su plan, registra cargas, mide progreso y recibe apoyo de nutrición e IA desde el móvil.

ReactTypeScriptMaterial UIFirebaseASP.NET CoreMongoDBGemini AIPWADockerLinux

1. Descripción General

Rol / contexto: diseño y desarrollo full stack de un producto de entrenamiento con una PWA para atletas, paneles de operación y servicios de datos.

Problema: las rutinas dispersas, el registro manual y la falta de contexto hacen difícil saber qué entrenar, cuánto progresar y cómo relacionar entrenamiento con nutrición.

Propuesta: una sola experiencia para consultar rutinas, ejecutar sesiones, registrar cargas y recibir herramientas de decisión, con el entrenador y la IA como apoyo, no como sustitutos del criterio humano.

Resultado: un producto usable desde móvil que reúne entrenamiento, nutrición, catálogo multimedia, perfiles, rutinas públicas y herramientas de creación en una arquitectura modular.

2. Arquitectura del Sistema

Visión general

La interfaz React se despliega como PWA y consume Firebase para identidad y datos operativos. Los servicios .NET y MongoDB cubren la API de producto, mientras Gemini y el catálogo multimedia amplían la creación y ejecución de rutinas.

┌─ Atleta / entrenador / administrador ───────────────┐
│        PWA React + Material UI · móvil primero       │
└──────────────────────┬──────────────────────────────┘
                       │ HTTPS
┌─ V-Forge Kernel ─────────────────────────────────────┐
│ Auth · rutinas · sesiones · cargas · nutrición       │
│ perfiles · social · tutoriales · configuración       │
└──────────────┬───────────────────────┬───────────────┘
               │ Firebase              │ API .NET
               ▼                       ▼
┌─ Firebase Auth / Firestore ─┐  ┌─ V-Forge Backend ────────┐
│ identidad y datos de app    │  │ catálogo · media · Mongo  │
└─────────────────────────────┘  └──────────────┬───────────┘
                                                ▼
                                      Gemini / media licenciada

Flujo de entrenamiento

1. El atleta entra a su dashboard y elige una rutina o sesión.
2. Revisa ejercicios, series, repeticiones, descansos y demostraciones.
3. Ejecuta el modo entrenamiento con temporizador y seguimiento de estado.
4. Registra cargas y repeticiones como dato de progreso.
5. El sistema alimenta gráficas, historial y decisiones futuras.

Separación de responsabilidades

CapaTecnologíaResponsabilidad
ExperienciaReact + MUI + PWAEntrenamiento, nutrición, navegación y feedback
PersistenciaFirebase Auth + FirestoreIdentidad, perfiles, rutinas y registros
ServiciosASP.NET Core + MongoDBCatálogo, media y API de producto
InteligenciaGemini + servicios de ingestaGenerar, digitalizar y normalizar rutinas

3. Tecnologías y Justificación

  • React + TypeScript: composición de flujos complejos con tipos explícitos para rutinas, sesiones, ejercicios y progreso.
  • Firebase: autenticación y sincronización rápida para una experiencia móvil que necesita persistir cambios frecuentes.
  • ASP.NET Core + MongoDB: servicios separados para catálogo, media e integraciones sin cargar esa lógica en los componentes.
  • Gemini AI: copiloto para generar planes y convertir texto, PDF o imágenes en rutinas editables.
  • PWA: instalación desde el navegador y acceso directo desde el teléfono sin mantener aplicaciones nativas paralelas.

4. Capturas de Pantalla

Galería pendiente de nuevas capturas verificadas.

Capturas pendientes

5. Problemas Encontrados

El entrenamiento ocurre en movimiento

Problema: una interfaz pensada para escritorio se vuelve lenta durante una serie.

Solución: navegación mobile-first, controles grandes, temporizadores y vistas enfocadas en la acción inmediata.

La IA no puede ser una caja negra

Problema: una rutina generada puede contener nombres ambiguos o decisiones que el entrenador debe revisar.

Solución: el ingestor y el generador dejan la propuesta editable y separan sugerencia, emparejamiento y publicación.

El progreso necesita datos propios

Problema: una gráfica atractiva no sirve si no existe un registro confiable de cargas.

Solución: el registro de series, repeticiones y pesos es el dato maestro que alimenta evolución y decisiones.

6. Decisiones Técnicas Clave

PWA antes que aplicaciones nativas

Decisión: una sola base móvil reduce fricción de distribución y permite actualizar la experiencia sin dos tiendas ni dos codebases.

IA como copiloto

Decisión: generar y digitalizar acelera el trabajo, pero el usuario conserva la corrección y publicación final.

Servicios separados de la interfaz

Decisión: Firebase, API .NET y MongoDB se consumen desde servicios, manteniendo los componentes centrados en renderizar y coordinar interacción.

7. Aprendizajes

  • El dato operativo precede al dashboard: registrar bien una serie vale más que decorar una gráfica.
  • La fricción se mide en taps: durante una sesión cada acción innecesaria rompe concentración.
  • La IA necesita edición: la confianza aumenta cuando el usuario entiende y puede corregir el resultado.
  • Una plataforma crece por módulos: entrenamiento, nutrición, social y administración comparten identidad, pero no mezclan responsabilidades.

8. Documentación Técnica del Proyecto

Arquitectura, producto y decisiones de implementación del kernel V-Forge.

README técnico de V-ForgeMódulos, arquitectura y visión del producto
→