New projects created: - michangarrito (marketplace mobile) - template-saas (SaaS template) - clinica-dental (dental ERP) - clinica-veterinaria (veterinary ERP) Architecture updates: - Move catalog from core/ to shared/ - Add MCP servers structure and templates - Add git management scripts - Update SUBREPOSITORIOS.md with 15 new repos - Update .gitignore for new projects Repository infrastructure: - 4 main repositories - 11 subrepositorios - Gitea remotes configured 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
142 lines
3.6 KiB
Markdown
142 lines
3.6 KiB
Markdown
# 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
|
|
|
|
```yaml
|
|
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*
|