Desarrollo local
1. Base de datos
Desde ganadero-api:
pnpm install
pnpm db:up # levanta PostgreSQL 17 (contenedor ganadero-postgres, puerto 5432)
2. API
cp .env.example .env # ajuste los valores (ver Variables de entorno)
pnpm db:migrate # aplica migraciones (usa DATABASE_MIGRATION_URL)
pnpm db:seed # organización demo y owner@demo.co (solo desarrollo)
pnpm start:dev # http://localhost:3000
Con SWAGGER_ENABLED=true la documentación OpenAPI queda disponible en /docs. Con MAIL_DRIVER=console los correos (invitaciones, restablecimiento) se escriben en el log de la API.
3. Frontend
Desde ganadero-web:
pnpm install
pnpm start # ng serve, normalmente http://localhost:4200
El origen del frontend debe coincidir con WEB_ORIGIN de la API (CORS con credenciales). Para trabajar sin backend, ganadero-web tiene un modo de datos simulados (environment.useMockApi) para inventario, movimientos, parámetros y costos.
4. Este manual
cd manual-ganadero
npm install
npm start # http://localhost:3000 (cambie el puerto si la API usa el 3000)
Comprobaciones útiles
pnpm typecheck && pnpm lint && pnpm test # en ganadero-api
npm run typecheck # en manual-ganadero