Volver a Proyecto Final
Proyecto Final — Leccion 4
·20 minConfiguración y Deploy
Configura tu proyecto para produccion.
tsconfig.json para produccion
json
{
"compilerOptions": {
"target": "ES2022",
"module": "ESNext",
"moduleResolution": "bundler",
"strict": true,
"noUncheckedIndexedAccess": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"exactOptionalPropertyTypes": true,
"outDir": "./dist",
"rootDir": "./src"
},
"include": ["src/**/*"],
"exclude": ["node_modules", "dist", "**/*.test.ts"]
}
Scripts de package.json
json
{
"scripts": {
"build": "tsc",
"dev": "tsc --watch",
"lint": "tsc --noEmit",
"test": "vitest"
}
}
Estructura de proyecto
src/
types/ # Tipos e interfaces
services/ # Lógica de negocio
utils/ # Funciones utilitarias
validators/ # Validaciones runtime
index.ts # Punto de entrada
tests/
services/ # Tests de servicios
utils/ # Tests de utilidades
CI/CD
yaml
# .github/workflows/ci.yml
name: CI
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm ci
- run: npm run lint
- run: npm test
- run: npm run build
Ejercicio pratico
Configura tsconfig.json con strict mode y scripts de build.
exercise.ts
Loading...
Resultado
Haz clic en "Ejecutar" para ver el resultado...