Saltar al contenido

Backend Architecture · 2024

Fitness API con arquitectura limpia

API REST desplegable con Docker para gestión de rutinas, seguimiento de progreso y estadísticas personales. Base sólida para escalar a producto multiusuario.

PythonFlaskSQLAlchemyDockerClean Architecture
Case 02
2024

4 capas

Clean Architecture

Backend Architecture
PythonFlaskSQLAlchemy

01 · Contexto

Necesidad personal de tener una plataforma propia para tracking de entrenamiento sin depender de apps de terceros. La oportunidad se aprovechó para practicar arquitectura limpia (Clean Architecture) y separación estricta de capas en un servicio backend real.

02 · Pregunta de negocio

¿Cómo diseñar una API mantenible, testeable y desplegable con un solo comando, que pueda crecer de usuario individual a múltiples usuarios sin reescribir el core?

03 · Datos

Modelo relacional de ejercicios, rutinas, sesiones y métricas de progreso, gestionado con SQLAlchemy sobre una base SQL. Diseño de esquema orientado a queries analíticas (evolución de cargas, volumen semanal, PRs).

04 · Método

Estructura por capas siguiendo Clean Architecture: dominio, casos de uso, adaptadores e infraestructura desacoplados. API REST con Flask y contratos explícitos. Contenerización con Docker y docker-compose para desarrollo/despliegue reproducibles. Estadísticas personales calculadas sobre la capa de dominio, no en el frontend.

05 · Insight

La separación estricta de capas paga rápido: cambiar de SQLite a PostgreSQL o añadir un endpoint nuevo sólo toca la capa de infraestructura o de adaptadores. Los tests de casos de uso corren sin base de datos real, lo que hace el ciclo de feedback casi instantáneo.

06 · Impacto

Base backend reutilizable como plantilla para futuros proyectos personales o clientes. Refuerza la parte de ingeniería del perfil híbrido: no sólo analizar datos, también construir los sistemas que los generan.