Pablo a054c73139 Agrego .github, que contiene los action yaml
No van a funcionar porque son de github actions, pero los subo porque no dejan de ser código fuente que puede reutilizarse, adaptándolo a otro entorno
2026-08-22 19:11:33 -03:00
2026-08-22 19:06:56 -03:00
2026-08-22 19:08:19 -03:00
2026-08-22 19:09:38 -03:00
2026-08-22 19:11:07 -03:00
2026-08-22 18:57:30 -03:00
2026-08-22 18:57:30 -03:00

Logo del Proyecto SOMA

Proyecto SOMA

Versión Estado del proyecto

Sistema de gestión para gimnasios, desarrollado como trabajo integrador para la materia Taller de Integración de la Licenciatura en Sistemas de Información.

SOMA es una aplicación de escritorio que le permite al administrador de un gimnasio gestionar sus clientes, turnos, pagos y horarios desde un solo lugar, reemplazando las planillas manuales y los mensajes de WhatsApp dispersos.

Equipo

Integrante Rol principal
Santángelo, Pablo Backend
Marioni, Alex Frontend

Funcionalidades

  • Usuarios: alta, baja, modificación y búsqueda de clientes; gestión de roles (admin, superadmin).
  • Pagos: registro de cuotas con recargo automático por mora; exportación a PDF y CSV; importación desde CSV.
  • Horarios y turnos: configuración de franjas horarias y cupos; reserva de turnos por cliente.
  • Actividades y tipos de cuota: configuración de las actividades del gimnasio y los planes de pago.
  • Notificación de deuda: envío directo de mensaje de WhatsApp al cliente moroso.
  • Autenticación: inicio de sesión con contraseña; cambio de contraseña.

Stack tecnológico

Capa Tecnología
Frontend Flutter (Dart)
Backend Supabase (PostgreSQL + Edge Functions)
Lenguajes Dart · PL/pgSQL · TypeScript (Deno)
Plataforma Windows (compilación nativa)

La lógica de negocio vive en funciones PL/pgSQL (fc_*) dentro de la base de datos. La app Flutter consume esas funciones a través de la API REST de Supabase.

Estructura del repositorio

SOMA-PRO/
├── flutter_soma_app/                      # App Flutter (código fuente principal)
│   └── lib/
│       ├── core/                          #   Configuración, tema, utilidades compartidas
│       └── features/                      #   Módulos por dominio (pagos, turnos, usuarios, ...)
│           └── <feature>/
│               ├── domain/                #     Entidades y lógica de negocio
│               ├── data/                  #     Acceso a datos (repositorios, Supabase)
│               └── presentation/          #     Pantallas y widgets
├── soma_pro_updater/                      # Actualizador automático de la app
├── supabase/                              # Proyecto Supabase
│   ├── migrations/                        #   Migraciones de la base de datos
│   └── seed.sql                           #   Datos iniciales
├── database/                              # Scripts SQL: funciones, triggers, esquema, backups
│   ├── functions/
│   ├── triggers/
│   ├── schema/
│   └── backup/
└── Documentation/                         # Documentación del proyecto
    ├── DocumentacionTecnicaSoma.pdf       #   Documentación técnica
    └── ManualDeUsuarioSoma.pdf            #   Manual de usuario

Cada feature de la app sigue una arquitectura de tres capas (domain → data → presentation), organizada por módulo funcional.

Requisitos para compilar

  • Flutter SDK ≥ 3.10
  • Dart SDK ≥ 3.10
  • Supabase CLI (para desarrollo local con la base de datos)
  • Windows 10+ (para compilar la app de escritorio)

Cómo ejecutar

git clone https://gitea.fcyt.uader.edu.ar/alumnos_ti/SOMA-PRO.git
cd SOMA-PRO/flutter_soma_app
flutter pub get
flutter run -d windows

La app necesita conectarse a una instancia de Supabase. Los archivos de configuración del entorno están en flutter_soma_app/config/.

Documentación

Documento Contenido
DocumentacionTecnicaSoma.pdf Arquitectura, decisiones técnicas, modelo de datos
ManualDeUsuarioSoma.pdf Guía de uso de la aplicación
S
Description
App de Gimnasio SOMA. Proyecto para la materia Taller de Integración.
Readme
1.9 MiB
Languages
Dart 65.3%
PLpgSQL 28.6%
C++ 2.9%
CMake 2.2%
Swift 0.3%
Other 0.6%