¿Qué es Lumora?
Lumora es un constructor de sitios web visual listo para lanzar como tu propio SaaS. Tus usuarios crean páginas de Bootstrap 5 arrastrando secciones, las editan en vivo (también en código) y las publican con un clic en su propio subdominio o dominio. Viene con cuentas, equipos, planes de pago de Stripe, un panel de administración y despliegue en Docker.
No es un kit de UI: cada pantalla en las capturas de pantalla está respaldada por la API, una base de datos Postgres con migraciones versionadas y pruebas automatizadas. El video y las imágenes de la galería animada lo muestran en acción.

01. Constructor visual
- Arrastra y suelta desde el panel de componentes (ratón y táctil): más de 60 componentes y secciones de Bootstrap 5.
- Edición de texto en línea con un doble clic.
- Panel de propiedades: texto, clases, tipografía, espaciado, colores, bordes, sombras y atributos.
- Deshacer/rehacer (hasta 100 pasos), duplicar, mover, árbol de capas y migas de pan.
- "Mis bloques": guarda una sección y reutilízala en cualquiera de los proyectos del equipo.


02. Estilos de página con un clic
El panel de estilo de página reestiliza toda la página a la vez: 8 estilos predefinidos, una paleta de marca con verificación de legibilidad (AA/AAA), Google Fonts y redondeo de esquinas, con una vista previa en vivo. Se guarda dentro del proyecto y se exporta con él.


03. Editor de código en tiempo real
Un panel inferior con CodeMirror 6 para HTML, CSS y JS, con sincronización bidireccional: lo que escribes se aplica al lienzo, y lo que haces en el lienzo aparece en el código al instante. CSS personalizado se aplica en vivo y viaja con la exportación.


04. Plantillas
8 plantillas iniciales: SaaS, agencia, café, fotografía, blog, estudio de yoga, evento y tienda. Se generan a partir de un script, por lo que puedes agregar las tuyas.
05. Diseño responsivo y modo oscuro
Verifica cada página en escritorio, tablet y móvil sin salir del editor. Toda la interfaz (editor, paneles, diálogos y páginas legales) tiene modos claro y oscuro, o sigue la configuración del sistema.



06. Publicación y sitios
- Publica en
https://<nombre>.tusitios.com con un clic, con historial de versiones (5, 20 o 50 dependiendo del plan) y restauración. - SEO por sitio (descripción, imagen social, favicon, idioma, noindex),
robots.txt y sitemap.xml. - Enlaces de vista previa privados de 7 días para mostrar un borrador a un cliente.
- Dominios personalizados con verificación DNS y HTTPS automático a través de Caddy.
- Los formularios en sitios publicados reciben envíos (anti-spam, cuota por plan, notificación por correo electrónico y exportación CSV).
- Estadísticas de visitas sin cookies ni datos personales.


07. Equipos y colaboración
- Equipos con roles (propietario, administrador, editor, espectador) e invitaciones por correo electrónico.
- Comentarios en elementos, con respuestas y resolución.
- Guardado automático con control de concurrencia entre pestañas y miembros, un borrador local anti-pérdida y una papelera de 30 días.
- Registro de actividad del equipo.


08. Cuentas y seguridad de inicio de sesión
Registro con verificación de correo electrónico, recuperación de contraseña, verificación en dos pasos (TOTP + códigos de recuperación), inicio de sesión opcional con Google o GitHub, y exportación y eliminación de datos de cuenta (GDPR). Las nuevas cuentas obtienen una guía de inicio que avanza por sí sola.


09. Planes y facturación de Stripe
Planes gratuitos, Pro y Team por espacio de trabajo, con límites aplicados en el servidor. Integra Stripe Checkout, el Portal del Cliente y webhooks firmados e idempotentes. En desarrollo, el pago se simula sin salir de la aplicación. El catálogo de planes y precios vive en un solo archivo (shared/src/plans.ts); sin facturación (BILLING_DRIVER=none) funciona como una herramienta interna.
10. Administración
Un panel de plataforma para el primer usuario registrado: cifras, búsqueda de usuarios y espacios de trabajo, suspensión de cuentas y sitios, manejo de informes y un registro de actividad global.

11. Exportar
HTML de un solo archivo, ZIP (index.html + CSS + JS), ZIP con Bootstrap local para uso sin conexión, y un proyecto .json re-importable.

12. Seguridad y operaciones
- Cookies de sesión HttpOnly, contraseñas scrypt, limitación de tasa, validación zod y una verificación de origen contra CSRF.
- Un CSP de producción que bloquea scripts en línea y de terceros; el canvas desinfecta HTML, y los sitios publicados se sirven en su propio dominio, separado del de la aplicación.
- Las imágenes subidas se vuelven a codificar con sharp (sin metadatos EXIF o GPS).
- Docker + Compose (app, Postgres 16, MinIO, Caddy, copias de seguridad),
/healthz, /readyz, métricas de Prometheus, registros JSON y Sentry opcional.
13. Calidad
Más de 250 pruebas unitarias (Vitest, también contra un Postgres real), 22 suites de pruebas de extremo a extremo y de accesibilidad (Playwright + axe), verificación de tipos estricta y lint. Verificado con una instalación limpia desde el ZIP (npm ci, construcción, verificación de tipos, pruebas y lint).
Requisitos
- Node.js 20 o posterior y npm 10.
- Desarrollo: no se necesita instalación de Postgres (utiliza Postgres embebido a través de PGlite).
- Producción: Postgres 16 (gestionado o el que está en
compose.yml), un dominio para la aplicación y otro con DNS comodín para sitios publicados. - Opcional, con tus propias claves: Stripe, SMTP o Resend para correo electrónico, almacenamiento S3/R2, Google/GitHub OAuth y Sentry.
Bueno saber
- La interfaz, el código y los correos electrónicos están en inglés.
- Las páginas de términos y privacidad son borradores: haz que un profesional las revise antes de abrir el servicio.
- Las imágenes de plantilla se cargan desde el CDN de Unsplash (Licencia de Unsplash) y no están incluidas en el paquete.
- No se incluyen claves ni credenciales: configúralas en
.env basándote en .env.example. - Las licencias de componentes de terceros (MIT, Apache-2.0 y similares) están listadas en
THIRD-PARTY-NOTICES.md. - Las capturas de pantalla, animaciones y videos se realizaron con la aplicación real y datos de demostración inventados.