46 lines
982 B
Bash
Executable File
46 lines
982 B
Bash
Executable File
#!/bin/bash
|
|
|
|
echo "Starting Gentle Momentum Reader..."
|
|
|
|
# Kill any existing processes on these ports
|
|
echo "Cleaning up existing processes..."
|
|
lsof -ti:8000 | xargs kill -9 2>/dev/null || true
|
|
lsof -ti:3000 | xargs kill -9 2>/dev/null || true
|
|
|
|
# Start backend
|
|
echo "Starting backend server..."
|
|
cd backend
|
|
uv run uvicorn main:app --reload --host 0.0.0.0 --port 8000 &
|
|
BACKEND_PID=$!
|
|
|
|
# Wait a moment for backend to start
|
|
sleep 3
|
|
|
|
# Start frontend
|
|
echo "Starting frontend development server..."
|
|
cd ../frontend
|
|
npm run dev &
|
|
FRONTEND_PID=$!
|
|
|
|
echo ""
|
|
echo "🚀 Gentle Momentum Reader is starting up!"
|
|
echo ""
|
|
echo "Backend: http://localhost:8000"
|
|
echo "Frontend: http://localhost:3000"
|
|
echo ""
|
|
echo "Press Ctrl+C to stop both servers"
|
|
echo ""
|
|
|
|
# Function to cleanup on exit
|
|
cleanup() {
|
|
echo ""
|
|
echo "Shutting down servers..."
|
|
kill $BACKEND_PID $FRONTEND_PID 2>/dev/null
|
|
exit 0
|
|
}
|
|
|
|
# Set trap to cleanup on exit
|
|
trap cleanup SIGINT SIGTERM
|
|
|
|
# Wait for both processes
|
|
wait |