Vista general
- Frontend: SvelteKit 5 + Tailwind CSS 4.1.7.
- Backend: Node.js + Express.
- Prisma ORM sobre PostgreSQL (gestionado en Render).
- Integraciones y servicios:
- Firebase (Authentication, Storage, Realtime Database para chat)
- Axios (consumo de APIs externas)
- RENAPER
- SendGrid (emails transaccionales)
- Testing: Vitest + Testing Library (unitarias e integración), Playwright (E2E), Supertest (HTTP).
- Despliegue: Vercel (frontend), Render (backend y base de datos), Firebase (auth, almacenamiento y mensajería en tiempo real).
Decisión de diseño
- La combinación SvelteKit + Node/Express en TypeScript garantiza un desarrollo full-stack tipado y coherente.
- Prisma y PostgreSQL aportan portabilidad y rendimiento en consultas.
- Firebase reduce complejidad operativa para autenticación, almacenamiento y chat mediante Realtime Database.
- Render y Vercel simplifican el despliegue continuo con costes operativos bajos.
- Axios permite integrar de forma controlada RENAPER/SendGrid desde el backend, manteniendo el control de seguridad y trazabilidad.
- Vista normal
- Vista ampliada
Leyenda
- Cliente (Web): interfaz en SvelteKit + Tailwind.
- API Express: backend en Node.js/Express.
- PostgreSQL (Render): base de datos relacional gestionada; acceso mediante Prisma.
- Firebase Authentication: login/registro/token management para clientes web.
- Firebase Storage: almacenamiento de archivos como evidencias (imágenes/documentos).
- Firebase Realtime Database (Chat): chat en tiempo real (suscripción desde el cliente).
- RENAPER/SendGrid: integraciones vía Axios desde el backend (verificaciones y envío de emails).
- Vercel/Render: plataformas de despliegue para frontend y backend/DB.