# jmuniz27/sistema-de-gestion-de-eventos--dawm architecture

> Architecture diagram of the GitHub repository jmuniz27/sistema-de-gestion-de-eventos--dawm, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/jmuniz27/sistema-de-gestion-de-eventos--dawm
- Repository: https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm

## Overview

Sistema web de gestión de eventos para usuarios y administradores. El flujo principal va del descubrimiento de eventos a la compra/asignación y consulta de boletos; el producto también cubre autenticación, administración de eventos y clientes, facturación y notificaciones. Supabase provee persistencia y autenticación, y el estado compartido conserva datos entre páginas. El README documenta estas capacidades; como varias fuentes de módulos no fueron muestreadas, sus relaciones internas se muestran solo cuando hay evidencia suficiente.

Main entry points: [`src/scripts/supabase-client.js`](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/scripts/supabase-client.js) (Cliente Supabase), [`src/pages/boletos`](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/boletos) (Compra y consulta), [`src/js/landing.js`](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/landing.js) (Explorar eventos), [`src/pages/autenticacion`](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/autenticacion) (Páginas de acceso)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_discovery["Eventos y acceso"]
  node_landing["Explorar eventos<br/>[landing.js]"]
  node_authpages["Páginas de acceso"]
  node_authlogic["Autenticación"]
  node_ticketpages["Compra y consulta"]
end

subgraph group_operations["Operación administrativa"]
  node_eventpages["Gestión de eventos"]
  node_eventlogic["Lógica de eventos<br/>[eventos.js]"]
  node_admin_events["Administrar eventos<br/>[admin-eventos.js]"]
  node_ticketlogic["Lógica de boletos<br/>[boletos.js]"]
  node_clients["Gestión de clientes<br/>[clientes.js]"]
  node_billing["Facturación"]
  node_billing_logic["Lógica de facturación"]
  node_dashboard["Panel y usuarios"]
end

subgraph group_messaging["Notificaciones"]
  node_notification_pages["Vistas de avisos"]
  node_notification_logic["Gestión de avisos"]
  node_notification_templates["Plantillas"]
  node_client_notifications["Avisos del cliente<br/>[notificaciones.js]"]
end

subgraph group_platform["Estado y datos"]
  node_state["Estado compartido<br/>[state-manager.js]"]
  node_supabase_client["Cliente Supabase<br/>[supabase-client.js]"]
  node_database[("Base de datos<br/>[schema.sql]")]
end

node_visitor(("Usuario"))
node_supabase[("Supabase")]

node_visitor -->|"explora"| node_landing
node_visitor -->|"inicia sesión"| node_authpages
node_visitor -->|"gestiona boletos"| node_ticketpages
node_landing -->|"consulta eventos"| node_supabase_client
node_authpages -->|"solicita acceso"| node_authlogic
node_authlogic -->|"autentica"| node_supabase_client
node_eventpages -->|"gestiona eventos"| node_eventlogic
node_admin_events -->|"consulta y elimina"| node_supabase_client
node_ticketpages -->|"consulta y asigna"| node_ticketlogic
node_ticketpages -->|"lee usuario"| node_state
node_ticketlogic -->|"persiste boletos"| node_supabase_client
node_clients -->|"gestiona clientes"| node_supabase_client
node_billing -->|"gestiona facturas"| node_billing_logic
node_billing_logic -->|"accede a datos"| node_supabase_client
node_dashboard -->|"consulta datos"| node_supabase_client
node_notification_pages -->|"gestiona avisos"| node_notification_logic
node_notification_logic -->|"lee y modifica"| node_supabase_client
node_notification_templates -->|"lee y modifica"| node_supabase_client
node_client_notifications -->|"consulta avisos"| node_supabase_client
node_supabase_client -->|"conecta"| node_supabase
node_supabase -->|"almacena"| node_database

click node_landing "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/landing.js"
click node_authpages "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/autenticacion"
click node_authlogic "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/scripts/modules/auth"
click node_eventpages "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/eventos"
click node_eventlogic "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/scripts/modules/eventos.js"
click node_admin_events "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/admin-eventos.js"
click node_ticketpages "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/boletos"
click node_ticketlogic "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/scripts/modules/boletos.js"
click node_clients "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/scripts/modules/clientes.js"
click node_billing "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/facturacion"
click node_billing_logic "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/scripts/modules"
click node_dashboard "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/scripts/modules"
click node_notification_pages "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/notificaciones"
click node_notification_logic "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/scripts/modules/notificaciones"
click node_notification_templates "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/notificaciones/plantillas-manager.js"
click node_client_notifications "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/clientes/notificaciones.js"
click node_state "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/state-manager.js"
click node_supabase_client "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/scripts/supabase-client.js"
click node_database "https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/database/schema.sql"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_landing,node_authpages,node_authlogic,node_ticketpages toneBlue
class node_eventpages,node_eventlogic,node_admin_events,node_ticketlogic,node_clients,node_billing,node_billing_logic,node_dashboard,node_supabase toneAmber
class node_notification_pages,node_notification_logic,node_notification_templates,node_client_notifications toneMint
class node_state,node_supabase_client,node_database toneRose
class node_visitor toneIndigo
```

## Components

### Eventos y acceso

- [Explorar eventos](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/landing.js): `src/js/landing.js`
- [Páginas de acceso](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/autenticacion): `src/pages/autenticacion`
- [Autenticación](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/scripts/modules/auth): `src/scripts/modules/auth`
- [Compra y consulta](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/boletos): `src/pages/boletos`

### Operación administrativa

- [Gestión de eventos](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/eventos): `src/pages/eventos`
- [Lógica de eventos](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/scripts/modules/eventos.js): `src/scripts/modules/eventos.js`
- [Administrar eventos](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/admin-eventos.js): `src/js/admin-eventos.js`
- [Lógica de boletos](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/scripts/modules/boletos.js): `src/scripts/modules/boletos.js`
- [Gestión de clientes](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/scripts/modules/clientes.js): `src/scripts/modules/clientes.js`
- [Facturación](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/facturacion): `src/pages/facturacion`
- [Lógica de facturación](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/scripts/modules): `src/scripts/modules`
- [Panel y usuarios](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/scripts/modules): `src/scripts/modules`

### Notificaciones

- [Vistas de avisos](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/pages/notificaciones): `src/pages/notificaciones`
- [Gestión de avisos](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/tree/main/src/scripts/modules/notificaciones): `src/scripts/modules/notificaciones`
- [Plantillas](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/notificaciones/plantillas-manager.js): `src/js/notificaciones/plantillas-manager.js`
- [Avisos del cliente](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/clientes/notificaciones.js): `src/js/clientes/notificaciones.js`

### Estado y datos

- [Estado compartido](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/js/state-manager.js): `src/js/state-manager.js`
- [Cliente Supabase](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/src/scripts/supabase-client.js): `src/scripts/supabase-client.js`
- [Base de datos](https://github.com/jmuniz27/sistema-de-gestion-de-eventos--dawm/blob/main/database/schema.sql): `database/schema.sql`

### Other components

- **Usuario**
- **Supabase**

## Connections

- Usuario → Explorar eventos: explora
- Usuario → Páginas de acceso: inicia sesión
- Usuario → Compra y consulta: gestiona boletos
- Explorar eventos → Cliente Supabase: consulta eventos
- Páginas de acceso → Autenticación: solicita acceso
- Autenticación → Cliente Supabase: autentica
- Gestión de eventos → Lógica de eventos: gestiona eventos
- Administrar eventos → Cliente Supabase: consulta y elimina
- Compra y consulta → Lógica de boletos: consulta y asigna
- Compra y consulta → Estado compartido: lee usuario
- Lógica de boletos → Cliente Supabase: persiste boletos
- Gestión de clientes → Cliente Supabase: gestiona clientes
- Facturación → Lógica de facturación: gestiona facturas
- Lógica de facturación → Cliente Supabase: accede a datos
- Panel y usuarios → Cliente Supabase: consulta datos
- Vistas de avisos → Gestión de avisos: gestiona avisos
- Gestión de avisos → Cliente Supabase: lee y modifica
- Plantillas → Cliente Supabase: lee y modifica
- Avisos del cliente → Cliente Supabase: consulta avisos
- Cliente Supabase → Supabase: conecta
- Supabase → Base de datos: almacena
