- 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
161 lines
2.9 KiB
Markdown
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.
|