Hemos migrado de package.json scripts a un Makefile por las siguientes ventajas:
✅ Mejor organización: Comandos agrupados por categoría
✅ Más potente: Soporte nativo para dependencias y paralelización
✅ Multiplataforma: Funciona en cualquier sistema Unix/Linux/macOS
✅ Estándar de la industria: Herramienta estándar para proyectos de desarrollo
✅ Mejor documentación: Help integrado con make help
make help # Ver todos los comandos disponibles
make info # Información del proyecto
make status # Estado actual del proyecto
make install # Instalar todas las dependencias
make dev # Iniciar desarrollo (backend + mobile)make backend-serve # Servidor backend en localhost:8000
make mobile-start # Servidor Expo para desarrollo
make mobile-android # Abrir en emulador Android
make mobile-ios # Abrir en simulador iOS
make mobile-web # Abrir versión webmake test # Ejecutar todos los tests
make test-backend # Solo tests del backend
make test-mobile # Solo tests del mobile
make test-backend-coverage # Tests backend con coverage
make test-mobile-coverage # Tests mobile con coverage
make test-watch # Tests mobile en modo watchmake db-migrate # Ejecutar migraciones pendientes
make db-fixtures # Cargar datos de prueba
make db-reset # Reset completo (migrate + fixtures)make clean # Limpieza completa (cache, node_modules, etc.)
make cache-clear # Solo cache del backend
make cache-clear-mobile # Solo cache del mobile
make fresh-install # Limpieza + instalación completamake update-deps # Actualizar todas las dependencias
make check-deps # Verificar dependencias desactualizadasmake build-mobile # Build de producción para mobilemake install # Instalar dependencias
make db-reset # Configurar base de datos
make test # Verificar que todo funciona
make dev # Iniciar desarrollomake dev # Iniciar servidores
make test-watch # Tests en background
# ... desarrollar ...
make test # Verificar antes de commitmake db-migrate # Aplicar nuevas migraciones
make db-fixtures # Actualizar datos de prueba
make update-deps # Actualizar dependencias si es necesariomake clean # Limpiar caches
make fresh-install # Reinstalación completa si hay problemasmake status # Versiones y estadísticas
make info # Información general
make logs-backend # Ver logs del backend en tiempo realmake check-deps # Ver dependencias desactualizadasmake docker-build # Construir contenedores
make docker-up # Iniciar contenedores
make docker-down # Parar contenedores# El Makefile maneja automáticamente la paralelización
make dev # Inicia backend y mobile simultáneamentemake help # Lista todos los comandos con descripciónPuedes agregar tus propios comandos editando el Makefile:
my-command: ## Mi comando personalizado
@echo "Ejecutando mi comando..."
# tus comandos aquí# Ver exactamente qué comandos se ejecutan
make -n test # Dry run (no ejecuta, solo muestra)| Antes (npm) | Ahora (make) |
|---|---|
npm run dev |
make dev |
npm run backend:test |
make test-backend |
npm run mobile:start |
make mobile-start |
npm run clean |
make clean |
npm run fresh-install |
make fresh-install |
- Make: Preinstalado en macOS/Linux
- PHP: >= 8.1
- Node.js: >= 18.0
- Composer: Para dependencias PHP
El Makefile respeta las variables de entorno estándar:
PHP_VERSIONNODE_VERSION- Variables definidas en
.env
# En macOS
xcode-select --install
# En Ubuntu/Debian
sudo apt-get install build-essentialchmod +x scripts/clean.shmake clean
make fresh-install¡El Makefile hace que el desarrollo sea más eficiente y organizado! 🎉