#!/usr/bin/env bash # Launch req-planner: backend (FastAPI) + frontend (Angular) set -e SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" cd "$SCRIPT_DIR" cleanup() { echo "Shutting down..." kill $BACKEND_PID $FRONTEND_PID 2>/dev/null wait $BACKEND_PID $FRONTEND_PID 2>/dev/null exit 0 } trap cleanup SIGINT SIGTERM echo "Starting backend on http://localhost:8100 ..." cd backend .venv/Scripts/python -m uvicorn app.main:app --reload --port 8100 & BACKEND_PID=$! cd "$SCRIPT_DIR" echo "Starting frontend on http://localhost:4200 ..." cd frontend npx ng serve & FRONTEND_PID=$! cd "$SCRIPT_DIR" echo "" echo "req-planner running:" echo " Frontend: http://localhost:4200" echo " Backend: http://localhost:8100" echo " API docs: http://localhost:8100/docs" echo "" echo "Press Ctrl+C to stop both services." wait