Guía de Instalación

Instalación del monorepo UnoSportClub v0.4.x para desarrollo local o despliegue con imagen Docker.

Requisitos previos

  • Node.js 24.x o superior (package.json: >=24.0.0)

  • npm 9+

  • Git

  • PostgreSQL 14+ (local o remoto)

node --version
npm --version
psql --version

Clonar el repositorio

Monorepo único (sin submódulos):

git clone --branch develop git@github.com:cortex-ia-com-co/unosportclub.git
cd unosportclub
npm install

Variables de entorno

cp .env.example .env
cd functions && cp .env.example .env

Configura en functions/.env al menos:

  • DB_HOST, DB_PORT, DB_NAME, DB_USER, DB_PASSWORD

  • DB_NAME_ACCOUNTING (base contable separada)

  • OAuth2: OAUTH2_ISSUER_BASE_URL, OAUTH2_AUDIENCE, OAUTH2_CLIENT_ID, OAUTH2_CLIENT_SECRET, SIGNER_KEY, SALT_SEPARATOR

Referencia completa: functions/.env.example y Despliegue con Caddy y Docker.

Base de datos

cd functions
node db/install.js
node db/install-accounting.js

Crea esquema, migraciones y datos iniciales. Ver functions/db/README.md.

Ejecutar en desarrollo

cd ..
npm run dev:serve

Inicia API (6000) y las cinco SPAs (6100–6104). Detalle en Preparación del Entorno de Desarrollo.

Build de producción

npm run build:production:all
cd docs && npm ci && npm run build:local

Despliegue Docker (opcional)

La imagen unificada se publica en GHCR desde CI:

  • Rama N.M → tag staging

  • Tag vX.Y.Z → release de versión

Ver Despliegue con Docker y Dockerfile en la raíz.

Verificación

curl -s http://localhost:6000/api/public/health
npm test