@bigso/app-builder
v0.1.0
Published
CLI para crear aplicaciones satélite BIGSO
Maintainers
Readme
@bigso/app-builder
CLI para crear aplicaciones satélite BIGSO con un solo comando.
Instalación
npm install -g @bigso/app-builderO usar con npx (sin instalar):
npx @bigso/app-builder create my-appUso
Crear una nueva app
bigso-app create my-appEsto iniciará un wizard interactivo que te guiará para configurar:
- Descripción de la app
- Tipo: fullstack (frontend + backend), solo frontend, o solo backend
- Puertos para frontend y backend
- URLs del SSO Core y Portal
- Base de datos (PostgreSQL, MySQL, SQLite)
- Instalación automática de dependencias
- Inicialización de repositorio git
Opciones de línea de comando
bigso-app create my-app \
--description "Mi app satélite" \
--template fullstack \
--frontend-port 4200 \
--backend-port 3001 \
--sso-core-url http://localhost:3000 \
--sso-portal-url http://localhost:3001 \
--database postgresql \
--skip-install \
--skip-gitModo non-interactive (CI/CD)
bigso-app create my-app --yes --skip-installEl flag --yes usa todos los valores por defecto:
- Template: fullstack
- Frontend port: 4200
- Backend port: 3001
- SSO Core: http://localhost:3000
- SSO Portal: http://localhost:3001
- Database: postgresql
Estructura generada
my-app/
├── my-app-frontend/ # Angular app
│ ├── src/
│ │ ├── app/
│ │ │ ├── core/ # Guards, interceptors, services
│ │ │ ├── modules/ # Auth, Dashboard
│ │ │ └── ...
│ │ ├── environments/
│ │ └── main.ts
│ ├── package.json
│ ├── angular.json
│ ├── tailwind.config.js
│ └── Dockerfile
├── my-app-middleware/ # Express API
│ ├── src/
│ │ ├── config/ # Env, SSO client, Prisma
│ │ ├── middlewares/ # Auth middleware
│ │ ├── routes/ # Auth routes
│ │ ├── app.js
│ │ └── server.js
│ ├── prisma/
│ │ └── schema.prisma
│ ├── package.json
│ └── Dockerfile
├── docker-compose.yml # Postgres + Redis + servicios
└── CLAUDE.md # Documentación del proyectoDesarrollo local
Después de crear la app:
cd my-app
# Opción 1: Con Docker (recomendado)
docker-compose up -d
# Opción 2: Desarrollo local
# Terminal 1 - Backend
cd my-app-middleware
npm install
npm run dev
# Terminal 2 - Frontend
cd my-app-frontend
npm install
npm run devIntegración SSO
La app generada incluye integración completa con BIGSO SSO:
- Frontend: AuthService con métodos para login, exchange de tokens, y auto-refresh
- Backend: Rutas de auth configuradas con
@bigso/auth-sdk/express - Cookies: Refresh tokens en cookies httpOnly con dominio configurado
- Guards:
isLoggedGuardprotege rutas del frontend
Configurar en SSO Core
La app debe estar registrada en SSO Core:
- App ID:
my-app(el nombre kebab-case de tu app) - Redirect URI:
http://localhost:4200/auth/callback - Allowed Origins:
http://localhost:4200
Características incluidas
Frontend (Angular)
- ✅ Angular 18 + Standalone Components
- ✅ TailwindCSS configurado
- ✅ BIGSO Auth SDK integrado
- ✅ Guards de autenticación
- ✅ HTTP Interceptors (Bearer token)
- ✅ Login y Callback components
- ✅ Dashboard de ejemplo
- ✅ Hot reload (ng serve)
Backend (Express)
- ✅ Express 5 + ES Modules
- ✅ BIGSO Auth SDK integrado
- ✅ Rutas de auth (/exchange-v2, /refresh, /logout, /session)
- ✅ Middleware de autenticación JWT
- ✅ Prisma ORM configurado
- ✅ Hot reload (node --watch)
- ✅ Docker y docker-compose
Comandos disponibles
bigso-app --help # Mostrar ayuda
bigso-app --version # Mostrar versión
bigso-app create <name> # Crear nueva appLicencia
MIT
