Repositorio oficial del Sistema de Gestión Integral para el Club Universitario de Berisso, desarrollado como Proyecto Final de la carrera de Ingeniería en Sistemas de Información de la Universidad Tecnológica Nacional - Facultad Regional La Plata (UTN FRLP).
Este proyecto surge para dar respuesta a una problemática crítica del Club Universitario de Berisso: la dependencia de un software de escritorio antiguo, cerrado, sin soporte ni documentación que obligaba al personal administrativo a duplicar tareas en soportes manuales y exponía al club a la pérdida de datos históricos.
La nueva plataforma sustituye dicha herramienta obsoleta por un sistema de información moderno, unificado y escalable, diseñado para optimizar tanto la gestión de legajos y finanzas como la comunicación institucional.
Desarrollar e implementar un sistema de información integral para la gestión de legajos, administración de cobranzas, control de asistencias y automatización de notificaciones del club.
- Diseño y Normalización de Datos: Base de datos relacional robusta que centraliza y unifica los legajos de jugadores, profesores y vínculos familiares, garantizando integridad referencial.
- Gestión Documental y Cumplimiento: Repositorio digital para seguimiento de documentación obligatoria de profesores (certificados de antecedentes penales, títulos habilitantes, CV).
- Automatización de Gestión Financiera: Módulo financiero para procesar automáticamente la generación de deudas, registrar flujos de pagos y emitir reportes de morosidad en tiempo real.
- Arquitectura de Comunicación Segmentada: Sistema de mensajería digital para difusión automatizada de novedades institucionales filtradas por rol, categoría o estado administrativo.
- Interoperabilidad Externa: Análisis de factibilidad para una futura integración de datos con la plataforma analítica Comet.
- Backend: Python / Django
- Frontend: React
- Base de Datos: SQLite / PostgreSQL (adaptado para despliegue local según restricciones de hardware del cliente)
- Infraestructura: Docker & Docker Compose
- Control de Versiones: Git & GitHub
- Personal Administrativo: Agilidad para procesar cobros, actualizar datos de contacto y auditar documentación legal de docentes.
- Profesores: Visibilidad sobre el padrón de alumnos a su cargo y canal de comunicación directo con las familias.
- Comisión Directiva: Reportes de gerenciamiento, estados de cuenta y panoramas generales del padrón para la toma de decisiones estratégicas.
- Socios / Familias: Destinatarios finales del flujo de comunicación automatizada y notificaciones institucionales.
Dado que el club posee restricciones operativas (ej. una única PC administrativa principal), el sistema se proyecta bajo premisas de eficiencia de recursos y soberanía de datos:
- Despliegue Local: Optimizado para ejecutarse en el hardware existente del club, eliminando costos innecesarios de hosting externo.
- Migración de Datos: Incluye procesos ETL y scripts de limpieza para trasladar registros históricos desde planillas y archivos en papel hacia la nueva base de datos relacional.
Antes de ejecutar el proyecto, crea un archivo .env en la raíz del repositorio:
DB_NAME=sgcub_db
DB_USER=sgcub_user
DB_PASSWORD=tu_contraseña_segura_aqui
DB_HOST=db
DB_PORT=5432
DEBUG=True
SECRET_KEY=cambiar_por_una_clave_larga_y_aleatoria
CORS_ALLOWED_ORIGINS=http://localhost:5173,http://127.0.0.1:5173
ADMIN_DNI=12345678
ADMIN_PASSWORD=admin
⚠️ Importante: La variableDB_PASSWORDes obligatoria para Docker Compose.
🔑 Administrador inicial: al levantar el backend se crea automáticamente un usuario con rol Administrador usando
ADMIN_DNIyADMIN_PASSWORD, solo si todavía no existe. Se ingresa con ese DNI y esa contraseña, y en el primer ingreso el sistema pide cambiarla. Desde la sección Usuarios se crean el resto de los usuarios.
Requisito: Tener instalado y en ejecución Docker Desktop.
Levanta la base de datos PostgreSQL, el backend en Django y el frontend en React:
docker compose up --build(Para ejecutarlo en segundo plano, añade el flag -d: docker compose up --build -d)
Al arrancar, el backend aplica las migraciones pendientes y crea el administrador inicial definido en el .env. No hace falta correr migrate a mano.
Si ADMIN_DNI / ADMIN_PASSWORD no están definidos, o se perdió el acceso, se puede crear un superusuario a mano (el Username debe ser un DNI sin puntos, porque es lo que pide el login):
docker compose exec backend python manage.py createsuperuser- Frontend (React): http://localhost:5173 — se ingresa con DNI y contraseña
- Backend API / Admin (Django): http://localhost:8000
- PostgreSQL (Host):
127.0.0.1:5433
# Detener contenedores conservando la base de datos
docker compose down
# Detener eliminando volúmenes (reinicio limpio de la BD)
docker compose down -v- Ir a la carpeta del backend:
cd Backend - Activar el entorno virtual:
- Windows PowerShell:
.\env\Scripts\Activate.ps1
- Windows CMD:
.\env\Scripts\activate.bat
- Windows PowerShell:
- Instalar dependencias (si hace falta):
pip install -r requirements.txt
- Aplicar migraciones y crear el administrador inicial (lee
ADMIN_DNIyADMIN_PASSWORDde las variables de entorno):python manage.py migrate python manage.py create_initial_admin
- Levantar el servidor local:
python manage.py runserver
- Ejecucion de tareas en segundo plano
python manage.py qcluster
- Ir a la carpeta del frontend:
cd Frontend/SGCUB - Instalar dependencias:
npm install
- Levantar el servidor de desarrollo:
npm run dev
El backend se ejecuta por defecto en
http://127.0.0.1:8000y el frontend en el puerto que Vite asigne, normalmentehttp://127.0.0.1:5173.
- Institución: Universidad Tecnológica Nacional - Facultad Regional La Plata (UTN FRLP)
- Carrera: Ingeniería en Sistemas de Información (5to Año)
- Asignatura: Proyecto Final (2026)
- Grupo: N°12
- Cliente: Club Universitario de Berisso
- Integrantes:
- Alvite Damián
- Capre Rodrigo
- Di Grappa Emiliano
- Elizalde Benjamín
- Preneste Máximo
Este proyecto se desarrolla en el marco académico de la UTN FRLP. Todos los derechos reservados al equipo de desarrollo y la institución.