Template SaaS
Version: 1.0.0
Origen: projects/erp-core, projects/gamilit
Estado: Produccion
Ultima actualizacion: 2025-12-27
Descripcion
Template base para aplicaciones SaaS multi-tenant con:
- Estructura de proyecto estandarizada
- Configuracion de suscripciones y planes
- Sistema de billing integrado
- Onboarding de nuevos tenants
- Dashboard de administracion
- Metricas de uso por tenant
Caracteristicas
| Caracteristica |
Descripcion |
| Multi-tenant |
Aislamiento completo por tenant con RLS |
| Planes/Pricing |
Sistema de planes con features por nivel |
| Suscripciones |
Gestion de ciclos de facturacion |
| Trial Period |
Soporte para periodos de prueba |
| Usage Metering |
Medicion de uso para facturacion |
| Self-service |
Portal de auto-gestion para clientes |
| Admin Dashboard |
Panel de administracion centralizado |
Stack Tecnologico
backend:
framework: NestJS
orm: TypeORM
payments: Stripe
validation: class-validator
frontend:
framework: React
state: Zustand
styling: Tailwind CSS
forms: React Hook Form + Zod
database:
engine: PostgreSQL
schemas:
- billing (suscripciones, pagos)
- tenants (organizaciones, miembros)
- usage (metricas de uso)
Estructura del Template
template-saas/
├── backend/
│ ├── src/
│ │ ├── modules/
│ │ │ ├── billing/ # Suscripciones, pagos
│ │ │ ├── tenants/ # Multi-tenancy
│ │ │ ├── plans/ # Planes y features
│ │ │ ├── usage/ # Metricas de uso
│ │ │ └── onboarding/ # Flujo de registro
│ │ └── shared/
│ │ ├── guards/ # Tenant guard, Plan guard
│ │ └── decorators/ # @CurrentTenant, @RequiresPlan
│ └── database/
│ └── ddl/
│ └── billing.sql # Schema de billing
│
├── frontend/
│ ├── src/
│ │ ├── pages/
│ │ │ ├── auth/ # Login, register
│ │ │ ├── onboarding/ # Wizard de setup
│ │ │ ├── dashboard/ # Dashboard principal
│ │ │ ├── billing/ # Gestion de plan
│ │ │ └── settings/ # Configuracion
│ │ └── components/
│ │ ├── billing/ # Componentes de billing
│ │ └── plan-gate/ # Feature gating UI
│ └── stores/
│ ├── tenant.store.ts
│ └── subscription.store.ts
│
└── docs/
├── onboarding-flow.md
├── billing-integration.md
└── multi-tenant-setup.md
Casos de Uso
- ERPs verticales (construccion, clinicas, retail)
- Plataformas de gestion
- Aplicaciones B2B con multiples clientes
- Sistemas con planes freemium/premium
Trade-offs
| Ventaja |
Desventaja |
| Estructura probada |
Requiere adaptacion al dominio |
| Billing integrado |
Dependencia de Stripe |
| Multi-tenant robusto |
Complejidad adicional |
| Metricas incluidas |
Overhead de tracking |
Proyectos que lo Usan
| Proyecto |
Version |
Notas |
| erp-core |
1.0.0 |
Base para verticales |
| gamilit |
1.0.0 |
Adaptado para educacion |
Referencias
IMPLEMENTATION.md - Guia paso a paso
_reference/ - Codigo de referencia
payments - Modulo de pagos del catalogo
multi-tenancy - Modulo de multi-tenant
Catalogo de Funcionalidades - SIMCO v3.4