El build MERN.
Tres años después del prototipo de 2019, reconstruí el somatotipo como una aplicación web real: React y TypeScript en el frontend, Express y MongoDB en el backend, con cuentas, un panel de control, un blog y cinco becarios del bootcamp BeCode que estaba liderando en lo que era, por primera vez, mi propio proyecto. La primera vez que la idea de AfitPilot parecía un producto.
De una página estática a una aplicación real.
La calculadora de 2019 era una sola página HTML. Escribías nueve números, JavaScript ejecutaba las ecuaciones de Heath-Carter, un canvas dibujaba el triángulo. Útil, pero te olvidaba en el momento en que cerrabas la pestaña.
A finales de 2022 quería algo que recordara. Algo que almacenara un perfil. Algo a lo que pudieras iniciar sesión, guardar resultados, volver un mes después y ver cómo habían cambiado tus números. Así que reconstruí todo desde cero como una aplicación con stack MERN (MongoDB, Express, React con TypeScript, Node) y reuní a un pequeño equipo de becarios del bootcamp BeCode para lanzarlo conmigo.
El trabajo comenzó a finales de 2022 y la entrega real ocurrió entre enero y marzo de 2023, unos dos meses de producción real. Cinco personas contribuyeron a lo largo del proyecto. El repositorio llegó a más de 430 pull requests. Añadimos autenticación, restablecimiento de contraseña por correo electrónico, un panel de perfil, un blog con comentarios, una calculadora de powerlifting junto al somatotipo, compartir en redes sociales, un formulario de contacto y contenido bilingüe. Nada de eso estaba pulido según los estándares de 2026. Todo era trabajo de producción honesto: la primera vez que había construido algo que necesitaba una base de datos para ser lo que era.
También es el proyecto donde aprendí lo que se siente al liderar un pequeño equipo en algo que era mío. Antes había enviado código con otras personas, en proyectos de otros. Esta fue la primera vez que yo era quien establecía la dirección, escribía los tickets, fusionaba los PRs. Tickets en una hoja de Google. Una rama `dev` y PRs con fork. Comentarios de revisión. Conflictos de fusión. Todo lo que siguió en AfitPilot (los flujos de trabajo, la disciplina de revisión, la forma en que lanzamos) comenzó aquí.
El build de 2022 en movimiento.
Capturas breves de la aplicación en funcionamiento: realizando el test, llegando al panel de control, explorando las categorías de somatotipo y comparando tu resultado con una biblioteca de atletas.
Sobre qué se construyó la aplicación.
Un stack MERN estándar para la época, con TypeScript en ambos lados del cable.
- Frontend
- React 18 + TypeScript, Material UI, react-swipeable-views
- Backend
- Node + Express, TypeScript, bcrypt + JSON Web Tokens para autenticación
- Base de datos
- MongoDB Atlas, esquemas de Mongoose, seis colecciones (usuarios, perfiles, blogs, comentarios, compartidos, contacto)
- Correo electrónico
- Nodemailer con HTML con plantillas para restablecimiento de contraseña y contacto
- Analítica
- react-ga4 (Google Analytics 4)
- Compartir
- react-share: Twitter, Facebook, LinkedIn, WhatsApp
- Alojamiento
- Render: un único servicio web que ejecuta tanto la API como el cliente React compilado
- Proceso
- Flujo de PR con repositorio bifurcado, gestionado mediante Google Sheets, revisado y fusionado manualmente
El primer equipo que lideré en mi propio proyecto.
La calculadora de 2019 fue un proyecto en solitario. La versión de 2022 fue la primera vez que lideré un pequeño equipo en algo mío: cinco becarios de BeCode bootcamp que contribuyeron junto a mí durante toda la vida del repositorio. Sus pull requests siguen en el historial.


- Walter ClaytonAutor, ingeniero principal
- Bhama GuruswamiColaborador
- Younes El MiriColaborador
- Arnaud DalcqColaborador
- Prince KyeiColaborador
- JojoColaborador
Fuente, referencias y el manual original de Heath-Carter.
Lo que esta compilación me enseñó, y lo que AfitPilot conservó.
La página de 2019 demostró que la idea podía existir. La compilación de 2022 demostró que podía ser un producto: que podías poner una base de datos detrás, una cuenta delante, un equipo alrededor y lanzar el resultado. Todo lo que AfitPilot hace hoy se basa en las lecciones de este código: cómo modelar un perfil, cómo manejar la autenticación sin convertirse en un incidente de seguridad, cómo revisar y fusionar el código de otras personas sin romper la confianza, cómo lanzar lo suficientemente lento para ser correcto y lo suficientemente rápido para seguir vivo.
AfitPilot conservó la arquitectura y desechó la implementación. El stack MERN dio paso a otro diferente. La calculadora de somatotipo de un solo propósito se convirtió en una de las siete calculadoras de entrenamiento en una plataforma mucho más grande. El panel se convirtió en algo mucho más ambicioso: un plan de entrenamiento adaptativo, no una instantánea guardada. Pero el bucle es el mismo: mediciones de entrada, sistema en el medio, salida personalizada de vuelta al atleta.
El código de 2022 ya no está en funcionamiento. La razón no es nostalgia; es que las cosas para las que fue construido ahora se hacen mejor, con AfitPilot, en producción. Mantener esta página es cómo mantengo visible el linaje sin mantener un servidor activo para alojar un proyecto que ya ha cumplido su función.