benjamincodes
Todos los proyectos

Mi DAE

Plataforma de vida estudiantil

Rol
Full-stack: API, web y app
Periodo
May 2025 – hoy
Estado
En desarrollo

Mi DAE junta en un solo lugar lo que hoy está repartido entre formularios, planillas y avisos. La misma API alimenta al portal web y a la app, con autenticación por JWT y permisos por rol.

Baja para verlo por dentro

Por dentro

App móvil · Flutter

Escáner QR para subir al bus, historial de viajes, implementos y noticias, con los tokens guardados de forma cifrada.

Paso 1 de 4
  • App móvil · Flutter

    Escáner QR para subir al bus, historial de viajes, implementos y noticias, con los tokens guardados de forma cifrada.

  • Portal web · Angular

    Vistas para estudiantes y para administración: talleres, clubes, torneos con pizarra táctica, reservas y usuarios.

  • API · Node y Express

    JWT y control de acceso por roles. Las inscripciones usan bloqueos transaccionales para que dos personas no tomen el mismo cupo.

  • Base de datos · MySQL

    Usuarios, reservas, torneos, buses y noticias en un modelo relacional.

Fases

  1. May 2025

    Nace la API

    Primer commit de la API REST en Node.js y Express con MySQL.

    Hecho
  2. Módulos

    Talleres, clubes y torneos

    Cupos con bloqueo transaccional, fixtures de liga y de eliminación simple y doble, y equipos con pizarra táctica por deporte.

    Hecho
  3. Mar 2026

    Portal web en Angular

    Angular 20 con componentes standalone y signals, con vistas de usuario y de administración.

    Hecho
  4. Pruebas

    Suites en Jest

    Tests de torneos, equipos, fixtures y noticias con Jest y Supertest.

    Hecho
  5. Oct 2026

    App móvil

    Flutter con Riverpod, Dio y GoRouter, enfocada en el QR de los buses y la solicitud rápida de implementos.

    En curso

Con qué está hecho

API

  • Node.js
  • Express
  • MySQL / MariaDB
  • JWT y roles
  • Jest + Supertest

Web

  • Angular 20
  • Signals
  • RxJS

App

  • Flutter
  • Riverpod
  • Dio
  • GoRouter
  • Lector QR

Lo que aprendí

  • Un cupo no se puede entregar dos veces: las inscripciones usan bloqueos transaccionales.
  • Generar fixtures de eliminación doble es un problema de algoritmos de verdad, y se testea.
  • Una sola API sirve a la web y a la app si sus contratos están bien documentados.

Lo que viene: Terminar la app móvil y probarla con estudiantes en los buses.