SaaSDragon es una plantilla base para construir productos SaaS multi-tenant en PHP, orientada por completo a resolver lo que cualquier software como servicio necesita antes de mostrar su primera pantalla de valor: registro de empresas, roles, planes y un panel administrativo funcional.
Permite organizar el registro de empresas (tenants), la gestión de equipo, la configuración por cliente y las suscripciones de manera centralizada, con el aislamiento de datos resuelto desde la capa de servicio y no solo desde la interfaz.

Es la herramienta ideal para desarrolladores y agencias que arrancan un proyecto SaaS y no quieren reconstruir la misma base de auth y tenancy en cada cliente nuevo.
El sistema está diseñado como punto de partida ágil para levantar el esqueleto completo de un SaaS, ya sea en un entorno local o en un servidor de producción.
A diferencia de la versión Pro, esta edición base se enfoca en el multi-tenancy esencial, los tres roles (Admin/Owner/Member) y suscripciones ficticias sin pasarela de pago real.
Disponible de forma gratuita y open source, construido sobre LegoBox v5 (el micro-framework PHP de Evilnapsis) y PHP 8, sin dependencias de Node ni build step.
Ver SaaSDragon Pro — $99 USD →
¿Para quién es SaaSDragon?
- Desarrolladores y agencias que arrancan un proyecto SaaS y necesitan una base multi-tenant ya resuelta en vez de reconstruirla en cada cliente.
- Founders técnicos que quieren validar un modelo de suscripciones sin conectar todavía una pasarela de pago real.
- Equipos que ya usan LegoBox en otros proyectos y buscan la misma lógica de programación aplicada a un SaaS.
- Estudiantes y desarrolladores que quieren entender cómo se resuelve el aislamiento de datos entre clientes (multi-tenancy) en un sistema PHP real.
Video demostrativo
En el siguiente video puedes ver como usar SaasDragon.
Módulos del sistema
Autenticación y Registro Multi-Tenant: Login, logout y registro público que crea la empresa, su usuario owner y una suscripción de prueba en una sola transacción. Contraseñas con Bcrypt y migración transparente de hashes legados.
Roles y Permisos: Tres niveles definidos — Admin de plataforma, Owner por empresa y Member invitado — cada uno con su alcance de acceso ya resuelto en los controllers.
Planes y Suscripciones: Página de precios pública que pasa el plan elegido al registro; el owner puede renovar la suscripción (+30 días) desde el dashboard, sin pasarela de pago real conectada.
Gestión de Equipo: El owner (o el admin de plataforma) da de alta usuarios member de su empresa y los elimina, con el owner protegido contra su propia eliminación.
Configuración por Empresa: Cada tenant administra su propio nombre visible, correo de soporte e idioma, sembrados por defecto al registrarse.
Módulo de Referencia (Personas): CRUD completo con endpoint JSON y aislamiento por tenant, pensado como plantilla para construir tus propios módulos siguiendo el mismo patrón.
Multi-tenancy y roles
El aislamiento entre clientes es la parte que más tiempo consume resolver bien en un SaaS, y es donde SaaSDragon pone más esfuerzo:
| Rol | Alcance |
|---|---|
| Admin (plataforma) | Ve y gestiona los datos de todas las empresas registradas |
| Owner | Dueño de su empresa, creado al registrarse. Accede a Equipo, Configuración y renovación |
| Member | Invitado por el owner, solo ve los datos de su propia empresa |
El filtro por empresa se aplica en la capa de servicio (App\Service), no solo ocultando enlaces en la interfaz: acceder por URL directa a un registro de otra empresa devuelve “no encontrado”, nunca el dato ajeno.
En la edición Pro este control se extiende con roles RBAC de permisos granulares en vez de los tres niveles fijos de la base.
Capturas de Pantalla
Pagina inicial del dashboard

Datos Técnicos
| Característica | Detalle |
|---|---|
| Lenguaje | PHP 8.x (Micro-framework LegoBox v5) |
| Base de Datos | MySQL / MariaDB |
| Motor de plantillas | Twig 3 |
| Enrutador | FastRoute |
| UI pública | Bootstrap 5 |
| UI administrativa | CoreUI Free Bootstrap Admin Template |
| Arquitectura | MVC + capa de servicio (App\Service) |
| Multi-tenancy | Aislamiento por company_id en la capa de servicio |
| Servidor | Apache (XAMPP, WAMP o hosting) |
| Licencia | Open Source |
| Versión actual | v5 del framework LegoBox base |
Instalación rápida
- Clona el repositorio dentro de tu servidor web (por ejemplo,
C:\xampp\htdocs\saasdragon). - Instala las dependencias con Composer:
composer install. - Importa el esquema:
mysql -u root < schema.sql— esto crea la basesaasdragon, las tablas y siembra 3 planes (Free/Pro/Enterprise), una empresa demo y un usuario admin de plataforma. - Configura las credenciales de conexión en
core/controller/Database.phpsi no usasrootsin contraseña en local. - Accede desde tu navegador a
http://localhost/saasdragon/. - Entra con las credenciales por defecto (
admin/admin) y cámbialas de inmediato por seguridad.
Cómo agregar tu propio módulo
Siguiendo el mismo patrón del módulo Personas:
- Modelo en
core/app/model/que extiendaLbModel. - Servicio en
core/app/service/con la lógica de negocio, filtrando porcompany_idsi el dato es por tenant. - Controller que extienda
Controller, concurrentCompanyId(),isRoot()yrequireRoleId([...])ya disponibles. - Rutas nuevas en
core/routes.phpy el handler sumado enindex.php. - Vistas en Twig, extendiendo el layout público o el administrativo según corresponda.
- El
require_oncedel controller encore/app/autoload.php.
Antes de llevarlo a producción
- No incluye pasarela de pago real — los planes y renovaciones son ficticios por diseño, para que decidas con qué proveedor conectarlo (o pases directamente a Pro, que ya integra Stripe).
- El formulario de contacto no envía correo ni persiste el mensaje todavía, es un placeholder.
- No hay protección CSRF en los formularios por el momento.
- Los textos de Términos y Privacidad son de ejemplo, no asesoría legal.
Descarga
Repositorio GitHub: github.com/evilnapsis/saasdragon
Descarga directa: github.com/evilnapsis/saasdragon/archive/refs/heads/master.zip
¿Necesitas más funcionalidades?
SaaSDragon Pro es la versión premium para equipos que van a llevar su SaaS a producción real, con autenticación completa, pagos con Stripe y herramientas para construir más rápido sin tocar código:
| Característica | Base (Gratis) | SaaSDragon Pro |
|---|---|---|
| Registro y Roles Multi-Tenant (Admin/Owner/Member) | ✅ | ✅ |
| Autenticación (login, registro) | ✅ | ✅ |
| Recuperación de contraseña | ❌ | ✅ |
| Login Social (Google) | ❌ | ✅ |
| Roles RBAC (permisos granulares) | ❌ | ✅ |
| Suscripciones y Pagos con Stripe (flat-rate, per-seat, usage-based, one-time) | ❌ | ✅ |
| Notificaciones (in-app y email) | ❌ | ✅ |
| Page Builder | ❌ | ✅ |
| Entity Builder (CRUD + API autogenerados para entidades personalizadas) | ❌ | ✅ |
SaaSDragon Pro = $99 USD
Mas Recursos
SaaSDragon está construido sobre LegoBox v5, el micro-framework PHP de Evilnapsis.
Si quieres entender cómo funciona por dentro antes de extender tu SaaS, puedes leer el artículo completo sobre LegoBox PHP →