# yunior1250/carwash-mockup architecture

> Architecture diagram of the GitHub repository yunior1250/carwash-mockup, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-08-09). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/yunior1250/carwash-mockup
- Repository: https://github.com/yunior1250/carwash-mockup

## Overview

#### Purpose and delivery model
This is a static Spanish-language business/POS interface for a car-wash (“lavadero”) operation, including cashier workflows, customer history, expenses, reporting, and SaaS administration. The application is delivered as standalone HTML pages with shared styling; no server, package manifest, or backend service is present in the repository.

#### Entry points and navigation surfaces
`index.html` is the likely public/root entry point. Operational navigation appears centered on `panel.html` and `selector-lavadero.html`, which likely select an operating location before entering cashier and service workflows. SaaS-level navigation is separated into dedicated administrative pages such as `saas-lavaderos.html`.

Paths:
- `index.html`
- `panel.html`
- `selector-lavadero.html`

#### Operational transaction workflow
The core business flow appears to be: register a wash/service, collect payment, manage cash closure, and settle totals. `registrar-servicio.html` captures service activity; `cobro.html` handles payment; `cierre-caja.html` closes the cash register; and `liquidacion.html` supports settlement/reconciliation. `anticipo.html` and `gasto.html` represent cash movements that affect the register outside ordinary service payments.

Paths:
- `registrar-servicio.html`
- `cobro.html`
- `cierre-caja.html`

#### Customer and receivables domain
Customer-facing records and debt tracking are explicit parts of the product boundary. `historial-cliente.html` provides prior customer/service visibility, while `deuda-personal.html` covers outstanding personal debt or credit balances. These pages are downstream consumers of service and payment records, even though persistence implementation is not visible here.

Paths:
- `historial-cliente.html`
- `deuda-personal.html`
- `cobro.html`

#### Reporting and data portability
Business review is represented by `reportes.html`, while `exportar-datos.html` exposes data extraction/export. These are reporting boundaries: transactional screens produce the operational records; report/export screens aggregate or serialize them for users or external analysis. No database, API client, or export format implementation is evident from the supplied tree.

Paths:
- `reportes.html`
- `exportar-datos.html`
- `cierre-caja.html`

#### SaaS tenancy and administration
A distinct SaaS administration area models multi-tenant organizational structure and access control. `saas-lavadero-alta.html` likely onboards wash businesses, `saas-lavaderos.html` manages them, `saas-sucursales.html` handles branches, and `saas-permisos.html` controls permissions. `saas-cuentas.html` and `saas-marca.html` suggest account and branding administration. This is conceptually separate from day-to-day cashier operation but supplies the tenant/location/user context it requires.

Paths:
- `saas-lavaderos.html`
- `saas-sucursales.html`
- `saas-permisos.html`

#### Shared presentation and build-related scripts
`estilos.css` is the only visible shared frontend asset and is therefore the primary visual consistency boundary across pages. `capturar.py` and `construir.py` are the only non-HTML/CSS files; their names suggest screenshot/capture and build/generation automation, but their roles cannot be confirmed without contents. There are no visible runtime dependencies, cloud infrastructure definitions, databases, or external service integrations.

Paths:
- `estilos.css`
- `capturar.py`
- `construir.py`

Main entry points: [`cierre-caja.html`](https://github.com/yunior1250/carwash-mockup/blob/main/cierre-caja.html) (Cierre de caja), [`saas-lavaderos.html`](https://github.com/yunior1250/carwash-mockup/blob/main/saas-lavaderos.html) (Lavaderos SaaS), [`registrar-servicio.html`](https://github.com/yunior1250/carwash-mockup/blob/main/registrar-servicio.html) (Registrar servicio), [`panel.html`](https://github.com/yunior1250/carwash-mockup/blob/main/panel.html) (Panel operativo)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_operation["Operación diaria"]
  node_panel["Panel operativo<br/>HTML navigation page<br/>[panel.html]"]
  node_location_selector["Selector de lavadero<br/>HTML location context"]
  node_service_registration["Registrar servicio<br/>HTML transaction page"]
  node_cash_advance["Anticipo<br/>HTML cash movement<br/>[anticipo.html]"]
  node_expense["Gasto<br/>HTML cash movement<br/>[gasto.html]"]
  node_cash_close["Cierre de caja<br/>HTML reconciliation page<br/>[cierre-caja.html]"]
  node_settlement["Liquidación<br/>HTML settlement page<br/>[liquidacion.html]"]
end

subgraph group_customers["Clientes y cobros"]
  node_payment["Cobro<br/>HTML payment page<br/>[cobro.html]"]
  node_customer_history["Historial de cliente<br/>HTML customer records"]
  node_personal_debt["Deuda personal<br/>HTML receivables page"]
end

subgraph group_insights["Control y datos"]
  node_reports["Reportes<br/>HTML reporting page<br/>[reportes.html]"]
  node_data_export["Exportar datos<br/>HTML export page"]
end

subgraph group_saas["Administración SaaS"]
  node_saas_washes["Lavaderos SaaS<br/>HTML tenant admin"]
  node_saas_onboarding["Alta de lavadero<br/>HTML tenant onboarding"]
  node_saas_branches["Sucursales SaaS<br/>HTML branch admin"]
  node_saas_permissions["Permisos SaaS<br/>HTML access admin<br/>[saas-permisos.html]"]
end

subgraph group_delivery["Presentación y automatización"]
  node_shared_styles["Estilos compartidos<br/>CSS stylesheet<br/>[estilos.css]"]
  node_build_script{{"Construcción<br/>Python automation<br/>[construir.py]"}}
  node_capture_script{{"Captura<br/>Python automation<br/>[capturar.py]"}}
end

node_home["Inicio<br/>HTML entry page<br/>[index.html]"]

node_home -->|"acceso"| node_panel
node_panel -->|"selecciona ubicación"| node_location_selector
node_location_selector -->|"contexto operativo"| node_service_registration
node_service_registration -->|"servicio a cobrar"| node_payment
node_service_registration -->|"consulta historial"| node_customer_history
node_payment -->|"actualiza saldo"| node_personal_debt
node_payment -->|"ingreso de caja"| node_cash_close
node_cash_advance -->|"movimiento de caja"| node_cash_close
node_expense -->|"movimiento de caja"| node_cash_close
node_cash_close -->|"reconciliación"| node_settlement
node_cash_close -->|"totales cerrados"| node_reports
node_reports -->|"exporta análisis"| node_data_export
node_saas_washes -->|"alta de tenant"| node_saas_onboarding
node_saas_washes -->|"administra sucursales"| node_saas_branches
node_saas_washes -->|"administra acceso"| node_saas_permissions
node_saas_branches -.->|"provee ubicaciones"| node_location_selector
node_saas_permissions -.->|"contexto de acceso"| node_panel
node_shared_styles -->|"estilos"| node_panel
node_shared_styles -->|"estilos"| node_service_registration
node_shared_styles -->|"estilos"| node_saas_washes
node_build_script -.->|"genera o prepara"| node_home
node_capture_script -.->|"captura"| node_home

click node_home "https://github.com/yunior1250/carwash-mockup/blob/main/index.html"
click node_panel "https://github.com/yunior1250/carwash-mockup/blob/main/panel.html"
click node_location_selector "https://github.com/yunior1250/carwash-mockup/blob/main/selector-lavadero.html"
click node_service_registration "https://github.com/yunior1250/carwash-mockup/blob/main/registrar-servicio.html"
click node_payment "https://github.com/yunior1250/carwash-mockup/blob/main/cobro.html"
click node_cash_advance "https://github.com/yunior1250/carwash-mockup/blob/main/anticipo.html"
click node_expense "https://github.com/yunior1250/carwash-mockup/blob/main/gasto.html"
click node_cash_close "https://github.com/yunior1250/carwash-mockup/blob/main/cierre-caja.html"
click node_settlement "https://github.com/yunior1250/carwash-mockup/blob/main/liquidacion.html"
click node_customer_history "https://github.com/yunior1250/carwash-mockup/blob/main/historial-cliente.html"
click node_personal_debt "https://github.com/yunior1250/carwash-mockup/blob/main/deuda-personal.html"
click node_reports "https://github.com/yunior1250/carwash-mockup/blob/main/reportes.html"
click node_data_export "https://github.com/yunior1250/carwash-mockup/blob/main/exportar-datos.html"
click node_saas_washes "https://github.com/yunior1250/carwash-mockup/blob/main/saas-lavaderos.html"
click node_saas_onboarding "https://github.com/yunior1250/carwash-mockup/blob/main/saas-lavadero-alta.html"
click node_saas_branches "https://github.com/yunior1250/carwash-mockup/blob/main/saas-sucursales.html"
click node_saas_permissions "https://github.com/yunior1250/carwash-mockup/blob/main/saas-permisos.html"
click node_shared_styles "https://github.com/yunior1250/carwash-mockup/blob/main/estilos.css"
click node_build_script "https://github.com/yunior1250/carwash-mockup/blob/main/construir.py"
click node_capture_script "https://github.com/yunior1250/carwash-mockup/blob/main/capturar.py"

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_panel,node_location_selector,node_service_registration,node_cash_advance,node_expense,node_cash_close,node_settlement toneBlue
class node_payment,node_customer_history,node_personal_debt toneAmber
class node_reports,node_data_export toneMint
class node_saas_washes,node_saas_onboarding,node_saas_branches,node_saas_permissions toneRose
class node_shared_styles,node_build_script,node_capture_script toneIndigo
class node_home toneNeutral
```

## Components

### Operación diaria

Flujos de caja y servicios del lavadero.

- [Panel operativo](https://github.com/yunior1250/carwash-mockup/blob/main/panel.html): HTML navigation page · `panel.html`
- [Selector de lavadero](https://github.com/yunior1250/carwash-mockup/blob/main/selector-lavadero.html): HTML location context · Selecciona la ubicación operativa. · `selector-lavadero.html`
- [Registrar servicio](https://github.com/yunior1250/carwash-mockup/blob/main/registrar-servicio.html): HTML transaction page · Captura lavados y servicios. · `registrar-servicio.html`
- [Anticipo](https://github.com/yunior1250/carwash-mockup/blob/main/anticipo.html): HTML cash movement · `anticipo.html`
- [Gasto](https://github.com/yunior1250/carwash-mockup/blob/main/gasto.html): HTML cash movement · `gasto.html`
- [Cierre de caja](https://github.com/yunior1250/carwash-mockup/blob/main/cierre-caja.html): HTML reconciliation page · `cierre-caja.html`
- [Liquidación](https://github.com/yunior1250/carwash-mockup/blob/main/liquidacion.html): HTML settlement page · `liquidacion.html`

### Clientes y cobros

- [Cobro](https://github.com/yunior1250/carwash-mockup/blob/main/cobro.html): HTML payment page · `cobro.html`
- [Historial de cliente](https://github.com/yunior1250/carwash-mockup/blob/main/historial-cliente.html): HTML customer records · Consulta servicios previos. · `historial-cliente.html`
- [Deuda personal](https://github.com/yunior1250/carwash-mockup/blob/main/deuda-personal.html): HTML receivables page · Consulta saldos pendientes. · `deuda-personal.html`

### Control y datos

- [Reportes](https://github.com/yunior1250/carwash-mockup/blob/main/reportes.html): HTML reporting page · `reportes.html`
- [Exportar datos](https://github.com/yunior1250/carwash-mockup/blob/main/exportar-datos.html): HTML export page · `exportar-datos.html`

### Administración SaaS

Configuración de tenants, sucursales y acceso.

- [Lavaderos SaaS](https://github.com/yunior1250/carwash-mockup/blob/main/saas-lavaderos.html): HTML tenant admin · `saas-lavaderos.html`
- [Alta de lavadero](https://github.com/yunior1250/carwash-mockup/blob/main/saas-lavadero-alta.html): HTML tenant onboarding · `saas-lavadero-alta.html`
- [Sucursales SaaS](https://github.com/yunior1250/carwash-mockup/blob/main/saas-sucursales.html): HTML branch admin · `saas-sucursales.html`
- [Permisos SaaS](https://github.com/yunior1250/carwash-mockup/blob/main/saas-permisos.html): HTML access admin · `saas-permisos.html`

### Presentación y automatización

- [Estilos compartidos](https://github.com/yunior1250/carwash-mockup/blob/main/estilos.css): CSS stylesheet · Presentación común de las páginas estáticas. · `estilos.css`
- [Construcción](https://github.com/yunior1250/carwash-mockup/blob/main/construir.py): Python automation · Automatización de build o generación no confirmada. · `construir.py`
- [Captura](https://github.com/yunior1250/carwash-mockup/blob/main/capturar.py): Python automation · Automatización de capturas no confirmada. · `capturar.py`

### Other components

- [Inicio](https://github.com/yunior1250/carwash-mockup/blob/main/index.html): HTML entry page · Punto de entrada público. · `index.html`

## Connections

- Inicio → Panel operativo: acceso
- Panel operativo → Selector de lavadero: selecciona ubicación
- Selector de lavadero → Registrar servicio: contexto operativo
- Registrar servicio → Cobro: servicio a cobrar
- Registrar servicio → Historial de cliente: consulta historial
- Cobro → Deuda personal: actualiza saldo
- Cobro → Cierre de caja: ingreso de caja
- Anticipo → Cierre de caja: movimiento de caja
- Gasto → Cierre de caja: movimiento de caja
- Cierre de caja → Liquidación: reconciliación
- Cierre de caja → Reportes: totales cerrados
- Reportes → Exportar datos: exporta análisis
- Lavaderos SaaS → Alta de lavadero: alta de tenant
- Lavaderos SaaS → Sucursales SaaS: administra sucursales
- Lavaderos SaaS → Permisos SaaS: administra acceso
- Sucursales SaaS → Selector de lavadero: provee ubicaciones
- Permisos SaaS → Panel operativo: contexto de acceso
- Estilos compartidos → Panel operativo: estilos
- Estilos compartidos → Registrar servicio: estilos
- Estilos compartidos → Lavaderos SaaS: estilos
- Construcción → Inicio: genera o prepara · Relación inferida por el nombre del script.
- Captura → Inicio: captura · Relación inferida por el nombre del script.
