Files
openapi-clean-arch-gen/QUICKSTART.md
didavila cebadbfbcc feat: add Prettier and ESLint configuration for code formatting and linting
- Create .prettierrc for Prettier configuration
- Add eslint.config.js for ESLint setup with TypeScript support
- Update package.json to include linting and formatting scripts
- Refactor generate.ts and generate.js for improved readability and error handling
- Enhance QUICKSTART.md and README.md with formatting and clarity improvements
2026-03-23 17:23:06 +01:00

161 lines
2.9 KiB
Markdown

# 🚀 Guía de Inicio Rápido
## Instalación en 3 pasos
### 1. Instalar dependencias
```bash
npm install
```
### 2. Instalar OpenAPI Generator CLI
```bash
npm run setup
# O manualmente:
npm install -g @openapitools/openapi-generator-cli
```
### 3. Probar con el ejemplo incluido
```bash
node generate.js -i example-swagger.yaml -o ./test-output --dry-run
```
## Uso con tu API
### Paso 1: Copia tu archivo Swagger/OpenAPI
```bash
cp /ruta/a/tu/api.yaml ./swagger.yaml
```
### Paso 2: Genera el código
```bash
node generate.js -i swagger.yaml -o ./src/app
```
### Paso 3: Revisa los archivos generados
```bash
ls -la ./src/app/data/
ls -la ./src/app/domain/
ls -la ./src/app/di/
```
## Opciones Comunes
### Generar en otra carpeta
```bash
node generate.js -i swagger.yaml -o ./frontend/src/app
```
### Usar templates personalizados
```bash
# Edita los archivos en ./templates/
# Luego ejecuta:
node generate.js -i swagger.yaml -t ./templates
```
### Modo de prueba (sin generar archivos)
```bash
node generate.js -i swagger.yaml --dry-run
```
## Integración con tu proyecto Angular
### 1. Registra los providers
En `app.config.ts` o `app.module.ts`:
```typescript
import { UserRepositoryProvider } from '@/di/repositories/user.repository.provider';
import { UserUseCasesProvider } from '@/di/use-cases/user.use-cases.provider';
export const appConfig: ApplicationConfig = {
providers: [
// ... otros providers
UserRepositoryProvider,
UserUseCasesProvider
]
};
```
### 2. Configura los path aliases
En `tsconfig.json`:
```json
{
"compilerOptions": {
"paths": {
"@/*": ["src/app/*"],
"@environment": ["src/environments/environment"]
}
}
}
```
### 3. Usa en tus componentes
```typescript
import { Component, inject } from '@angular/core';
import { USER_USE_CASES } from '@/domain/use-cases/user/user.use-cases.contract';
@Component({
selector: 'app-users',
template: `...`
})
export class UsersComponent {
#userUseCases = inject(USER_USE_CASES);
ngOnInit() {
this.#userUseCases.getUsers().subscribe((users) => {
console.log(users);
});
}
}
```
## Troubleshooting
### ❌ Error: openapi-generator-cli: command not found
**Solución:**
```bash
npm install -g @openapitools/openapi-generator-cli
```
### ❌ Error: Cannot find module 'commander'
**Solución:**
```bash
npm install
```
### ❌ Los archivos no se generan
**Solución:** Verifica que el directorio de salida existe o usa `--dry-run` para ver qué pasaría:
```bash
node generate.js --dry-run
```
## Próximos pasos
1. ✅ Genera el código desde tu Swagger
2. 📝 Ajusta los templates según tus necesidades
3. 🔧 Configura los path aliases en tu tsconfig.json
4. 📦 Registra los providers en tu módulo Angular
5. 🚀 ¡Usa el código generado en tus componentes!
## ¿Necesitas ayuda?
Consulta el README.md completo para documentación detallada.