telos
Todos los proyectos

02 · En línea · 2026

Panel de gestión escolar

Abrir la demo

Un sistema de gestión que diseñé e hice solo para una escuela de inglés, a lo largo de dieciséis meses y 419 commits. Gestionó la escuela durante más de un año; dejé de trabajar en él en agosto de 2026 y vuelvo a él en las vacaciones. La matrícula llena el PDF del contrato en el mismo navegador, los contratos salen a firma electrónica con el estado seguido por webhook, la escuela llega a las familias con web push y el horario de clases es un tablero de arrastrar y soltar. La marca y los datos de la escuela son privados, así que la demo de abajo es el mismo panel reconstruido con una marca genérica y datos ficticios, navegable de principio a fin.

saas-dashboard
Panel de gestión escolar

DEMO EN VIVO

Mira el producto real funcionando

01 / EL PROBLEMA

La matrícula vivía en una impresora y un chat de WhatsApp.

Una escuela de inglés hacía la matrícula como la mayoría de las escuelas pequeñas: un contrato llenado a mano, impreso, firmado cuando algún padre pasaba por allí y reclamado por WhatsApp cuando no pasaba. El horario vivía en una hoja de cálculo, los avisos salían de chat en chat y nadie tenía una sola vista de quién estaba matriculado, quién había firmado y a quién le faltaba firmar.

Hice el sistema que reemplazó esa rutina, y lo seguí construyendo durante dieciséis meses.

02 / LA CONSTRUCCIÓN

Una matrícula que llena su propio contrato.

El PDF del contrato se llena en el navegador. Los datos del formulario de matrícula van al contrato real con pdf-lib: sin volver a escribir nada, sin copias desactualizadas. Después el documento sale a firma electrónica, y un webhook cambia su estado en el panel cuando vuelve firmado.

Web push para llegar a las familias. Los avisos salen como notificaciones push en lugar de un mensaje más de WhatsApp perdido en el chat.

Un horario de arrastrar y soltar. Las clases se mueven entre aulas y franjas horarias arrastrándolas, y la agenda se imprime y se exporta para la pared junto a la recepción.

Por debajo: React con TypeScript, Postgres con Drizzle ORM y migraciones numeradas, y una suite de regresión en Playwright que corre contra una base de datos de prueba con datos cargados.

03 / DIECISÉIS MESES

419 commits, de abril de 2025 a agosto de 2026.

Esta es la parte que una demo no puede fingir. El repositorio tiene 419 commits a lo largo de dieciséis meses —unas 50k líneas al final— y el historial se lee como el de un producto real: primero la matrícula, después contratos y firma, después la agenda, después push. Los cambios de esquema salieron como migraciones; los flujos que importan están cubiertos por pruebas end-to-end.

Un sistema solo acumula dieciséis meses de commits si se usa, y este se usó: matrículas reales, contratos firmados de verdad, un horario real en una pared real.

04 / LA DEMO

El mismo panel, con una marca genérica.

La marca y los datos de la escuela son de la escuela, así que la versión que puedes abrir aquí es una reconstrucción del panel con marca genérica y datos ficticios. Las mismas pantallas, la misma densidad: tres roles de acceso (dirección, coordinación, recepción), cinco gráficos en vivo, importación de hojas de cálculo y un tema claro/oscuro animado con la View Transitions API.

Toda la demo es un solo archivo HTML. Se abre en el móvil, sin login y sin instalar nada, y esa es la idea: el sistema real existe, y esta es la parte que puedo darte como enlace.

  • Líneas de código

    ~50k

  • Commits

    419

  • Meses de trabajo

    16

  • Demo

    1 HTML