Some checks failed
CI Pipeline / changes (push) Has been cancelled
CI Pipeline / core (push) Has been cancelled
CI Pipeline / trading-backend (push) Has been cancelled
CI Pipeline / trading-data-service (push) Has been cancelled
CI Pipeline / trading-frontend (push) Has been cancelled
CI Pipeline / erp-core (push) Has been cancelled
CI Pipeline / erp-mecanicas (push) Has been cancelled
CI Pipeline / gamilit-backend (push) Has been cancelled
CI Pipeline / gamilit-frontend (push) Has been cancelled
161 lines
3.8 KiB
Markdown
161 lines
3.8 KiB
Markdown
# DevTools - Herramientas de Desarrollo
|
|
|
|
Development tools, configurations, and scripts for the ISEM workspace.
|
|
|
|
## Estructura
|
|
|
|
```
|
|
devtools/
|
|
├── configs/ # Shared configurations
|
|
│ ├── eslint.config.base.js # ESLint base configuration
|
|
│ ├── prettier.config.js # Prettier configuration
|
|
│ ├── tsconfig.base.json # TypeScript base configuration
|
|
│ └── jest.config.base.js # Jest base configuration
|
|
├── docker/ # Docker utilities
|
|
│ └── postgres-init/ # PostgreSQL initialization scripts
|
|
├── scripts/ # Development scripts
|
|
│ ├── dev.sh # Main development helper
|
|
│ ├── bootstrap-project.sh # Crear nuevo proyecto
|
|
│ └── validate-structure.sh # Validar estructura
|
|
└── templates/ # Project templates
|
|
```
|
|
|
|
## Scripts Disponibles
|
|
|
|
### dev.sh - Script principal de desarrollo
|
|
|
|
```bash
|
|
# Ver comandos disponibles
|
|
./scripts/dev.sh help
|
|
|
|
# Ver estado del workspace
|
|
./scripts/dev.sh status
|
|
|
|
# Iniciar servicios Docker
|
|
./scripts/dev.sh docker-up
|
|
|
|
# Iniciar un proyecto
|
|
./scripts/dev.sh start gamilit
|
|
./scripts/dev.sh start trading
|
|
./scripts/dev.sh start mecanicas
|
|
|
|
# Instalar dependencias
|
|
./scripts/dev.sh install
|
|
|
|
# Ver puertos asignados
|
|
./scripts/dev.sh ports
|
|
|
|
# Lint de proyectos
|
|
./scripts/dev.sh lint gamilit
|
|
```
|
|
|
|
### bootstrap-project.sh
|
|
|
|
Crea un nuevo proyecto con estructura estándar.
|
|
|
|
```bash
|
|
# Uso
|
|
./scripts/bootstrap-project.sh <nombre> [tipo]
|
|
|
|
# Tipos disponibles
|
|
# - saas (default)
|
|
# - erp-vertical
|
|
# - analytics
|
|
# - edtech
|
|
|
|
# Ejemplos
|
|
./scripts/bootstrap-project.sh mi-proyecto
|
|
./scripts/bootstrap-project.sh erp-retail erp-vertical
|
|
./scripts/bootstrap-project.sh trading-bot analytics
|
|
```
|
|
|
|
### validate-structure.sh
|
|
|
|
Valida la estructura del workspace y/o proyectos.
|
|
|
|
```bash
|
|
# Validar todo el workspace
|
|
./scripts/validate-structure.sh
|
|
|
|
# Validar un proyecto específico
|
|
./scripts/validate-structure.sh gamilit
|
|
```
|
|
|
|
## Templates
|
|
|
|
### project-template/
|
|
|
|
Template base para nuevos proyectos. Contiene:
|
|
- Estructura de directorios estándar
|
|
- Archivos README.md predefinidos
|
|
- Configuración de orchestration
|
|
|
|
### customer-template/
|
|
|
|
Template para implementaciones de clientes. Contiene:
|
|
- Estructura de configuración
|
|
- Archivos de personalización
|
|
- Documentación del cliente
|
|
|
|
## Configuraciones Compartidas
|
|
|
|
### ESLint (eslint.config.js)
|
|
```javascript
|
|
import baseConfig from '../../../devtools/configs/eslint.config.base.js';
|
|
export default [...baseConfig];
|
|
```
|
|
|
|
### Prettier (.prettierrc.js)
|
|
```javascript
|
|
module.exports = require('../../../devtools/configs/prettier.config.js');
|
|
```
|
|
|
|
### TypeScript (tsconfig.json)
|
|
```json
|
|
{
|
|
"extends": "../../../devtools/configs/tsconfig.base.json",
|
|
"compilerOptions": { "outDir": "./dist", "rootDir": "./src" }
|
|
}
|
|
```
|
|
|
|
## Docker
|
|
|
|
Docker Compose principal en la raíz del workspace (`/docker-compose.yml`):
|
|
|
|
```bash
|
|
# Levantar todos los servicios
|
|
docker-compose up -d
|
|
|
|
# Ver logs
|
|
docker-compose logs -f
|
|
|
|
# Detener servicios
|
|
docker-compose down
|
|
```
|
|
|
|
Servicios incluidos:
|
|
- **PostgreSQL 15** - Base de datos principal (multi-database)
|
|
- **TimescaleDB** - Series temporales para Trading Platform
|
|
- **Redis 7** - Cache y sesiones
|
|
- **MinIO** - Almacenamiento S3-compatible
|
|
- **Mailhog** - Testing de emails
|
|
- **Adminer** - UI de administración de BD
|
|
|
|
## Asignación de Puertos
|
|
|
|
| Proyecto | Servicio | Puerto |
|
|
|----------|----------|--------|
|
|
| Gamilit | Backend | 3000 |
|
|
| Gamilit | Frontend | 5173 |
|
|
| Trading | Backend | 3001 |
|
|
| Trading | Frontend | 5174 |
|
|
| Trading | Data Service | 8001 |
|
|
| ERP Core | Backend | 3010 |
|
|
| Mecánicas | Backend | 3011 |
|
|
| Shared | PostgreSQL | 5432 |
|
|
| Shared | TimescaleDB | 5433 |
|
|
| Shared | Redis | 6379 |
|
|
|
|
---
|
|
*DevTools del Workspace ISEM*
|