CRM Automotriz VW — MVP Fase 1 completado

Contexto: Monorepo CRM para concesionario Camiones Europeos (Volkswagen). Stack: Refine + Vite + TypeScript / Supabase self-hosted + Docker Compose. Ubicación: ~//use-opencode/crm-camiones-vw/

## Estructura del proyecto
 

crm-camiones-vw/ ├── docker-compose.yml # Supabase self-hosted + Nginx + Edge Runtime ├── .env.example # Variables de entorno ├── README.md # Pasos de autohospedaje ├── backend/ │ ├── nginx/ # Reverse proxy + TLS │ └── supabase/ │ ├── migrations/ # SQL: schema, tablas, RLS, views, cron │ ├── policies/ # RLS por rol/equipo/sucursal │ ├── seed/ # Catálogo VW + 10 prospectos ejemplo │ └── functions/ # Edge: web-to-lead, DMS adapter mock, DMS sync └── frontend/ └── src/ ├── providers/ # Supabase, data, auth, accessControl ├── pages/ # Dashboard, Pipeline Kanban, CRUD completo ├── types/ # Tipado TypeScript + i18n español └── components/ # Layout con menú lateral


## Funcionalidades Fase 1
1. Pipeline prospecto→cotización→seguimiento (Kanban 7 etapas)
2. Cotización multi-unidad con builder + PDF (jsPDF)
3. Agenda + recordatorios (pg_cron) + historial actividades
4. Gestión documental (Supabase Storage)
5. Dashboard real-time: leads, pipeline, bateo asesores
6. Web-to-lead Edge Function pública
7. Inventario DMS adapter mock (interfaz intercambiable)

## Seguridad RLS
- asesor: solo sus registros
- gerente: los de su equipo/sucursal
- director/admin: todo
- Vistas ocultan costo/margen a asesor

## Para conectar DMS real
Ver backend/supabase/functions/dms-adapter/mock.ts — interfaz TypeScript
documentada con ejemplos de API REST, CSV y SOAP.