84 lines
1.9 KiB
Bash
Executable File
84 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Script para iniciar el servidor web de Wallabicher (con landing)
|
|
|
|
echo "🚀 Iniciando Wallabicher Web Interface..."
|
|
echo ""
|
|
|
|
# Verificar que Node.js esté instalado
|
|
if ! command -v node &> /dev/null; then
|
|
echo "❌ Node.js no está instalado. Por favor, instálalo primero."
|
|
exit 1
|
|
fi
|
|
|
|
# Verificar que npm esté instalado
|
|
if ! command -v npm &> /dev/null; then
|
|
echo "❌ npm no está instalado. Por favor, instálalo primero."
|
|
exit 1
|
|
fi
|
|
|
|
# Instalar dependencias del backend si no existen
|
|
if [ ! -d "backend/node_modules" ]; then
|
|
echo "📦 Instalando dependencias del backend..."
|
|
cd backend
|
|
npm install
|
|
cd ..
|
|
fi
|
|
|
|
# Instalar dependencias del dashboard si no existen
|
|
if [ ! -d "dashboard/node_modules" ]; then
|
|
echo "📦 Instalando dependencias del dashboard..."
|
|
cd dashboard
|
|
npm install
|
|
cd ..
|
|
fi
|
|
|
|
# Instalar dependencias del landing si no existen
|
|
if [ -d "landing" ] && [ ! -d "landing/node_modules" ]; then
|
|
echo "📦 Instalando dependencias del landing..."
|
|
cd landing
|
|
npm install
|
|
cd ..
|
|
fi
|
|
|
|
# Iniciar backend en background
|
|
echo "🔧 Iniciando backend..."
|
|
cd backend
|
|
npm start &
|
|
BACKEND_PID=$!
|
|
cd ..
|
|
|
|
# Esperar un poco para que el backend se inicie
|
|
sleep 2
|
|
|
|
# Iniciar dashboard en background
|
|
echo "🎨 Iniciando dashboard..."
|
|
cd dashboard
|
|
npm run dev &
|
|
DASHBOARD_PID=$!
|
|
cd ..
|
|
|
|
# Iniciar landing si existe
|
|
if [ -d "landing" ]; then
|
|
echo "🌐 Iniciando landing..."
|
|
cd landing
|
|
npm run dev &
|
|
LANDING_PID=$!
|
|
cd ..
|
|
fi
|
|
|
|
echo ""
|
|
echo "✅ Servidores iniciados!"
|
|
echo "📡 Backend: http://localhost:3001"
|
|
echo "🎨 Dashboard: http://localhost:3000"
|
|
if [ -d "landing" ]; then
|
|
echo "🌐 Landing: http://localhost:3002"
|
|
fi
|
|
echo ""
|
|
echo "Presiona Ctrl+C para detener los servidores"
|
|
|
|
# Esperar a que se presione Ctrl+C y matar todos los procesos
|
|
trap "kill $BACKEND_PID $DASHBOARD_PID ${LANDING_PID:-} 2>/dev/null; exit" INT TERM
|
|
wait
|
|
|