Saltar al contenido
JC.dev
Área Técnica
Volver a Proyectos

Technical Foundation

SportBarLeague

Plataforma full-stack para la gestión de eventos deportivos y ligas en bares. Sistema completo de autenticación JWT, CRUD avanzado, modelado relacional robusto y gestión de imágenes con Cloudinary. La base técnica sólida que consolidó los fundamentos del desarrollo backend profesional.

SportBarLeague Interface

De un vistazo

Tipo de proyecto
Proyecto de bootcamp
Rol
Proyecto de bootcamp que consolidó los fundamentos del desarrollo backend, con frontend y API propios.
Stack
  • React 18 (Vite)
  • Flask (Python 3.13)
  • PostgreSQL
  • SQLAlchemy
  • Alembic
  • JWT
  • Docker

Qué demuestra

  1. Autenticación JWT con refresh tokens construida a mano, sin servicio de Auth en la nube.
  2. Modelado relacional con relaciones N:M y 1:N, constraints y migraciones versionadas con Alembic.
  3. API REST con separación de controladores, validación de payloads y manejo de errores consistente.

Arquitectura

De la interfaz React a la base de datos relacional.

  1. React · Vite, Cliente. Frontend React con componentes reutilizables, estado global y consumo de la API con tokens JWT. Siguiente: API · Flask.
  2. API · Flask, REST + JWT. API REST con controladores separados, validación de payloads, registro, login y refresh tokens hechos a mano. Siguiente: SQLAlchemy.
  3. SQLAlchemy, Modelo · Alembic. Relaciones N:M (jugadores-equipos) y 1:N (liga-equipos) con constraints y migraciones versionadas con Alembic. Siguiente: PostgreSQL.
  4. PostgreSQL, Base de datos. Base de datos relacional de ligas, equipos y resultados. Fin del flujo.

El Concepto

Plataforma para gestión de ligas deportivas en bares/pubs.

Qué permite

  • Crear ligas y registrar equipos.
  • Gestionar resultados y seguir clasificaciones.

Qué exigía

Un sistema completo de autenticación y un modelo de datos relacional robusto.

Decisiones Técnicas

  • Autenticación JWT manual: Registro, login, protección de rutas y refresh tokens estructurados desde cero, sin depender de un servicio de Auth en la nube.
  • API REST con Flask: Endpoints diseñados profesionalmente, con separación de controladores, validación exhaustiva de payloads y manejo de errores consistente.
  • Modelado Relacional (SQLAlchemy): Relaciones complejas N:M (jugadores-equipos), 1:N (liga-equipos), foreign keys correctas y uso de constraints. Migraciones versionadas vía Alembic.
  • Frontend integrado: Componentes reutilizables React, manejo de estado global, consumo de API e intercepción de tokens JSON Web.

La Evolución Profesional

SportBarLeague fue el proyecto que consolidó los fundamentos imprescindibles del desarrollo backend serio.

Después de orquestar autenticación, bases de datos relacionales y API REST de forma manual, el salto hacia arquitecturas más abstractas en proyectos superiores fue completamente natural: cada decisión avanzada en nuevos sistemas tiene sus raíces en lo asimilado aquí.