add run.sh for easy launching, also waits for port to be open before launching browser

This commit is contained in:
Chris Oloff 2026-01-14 14:51:39 +02:00
parent bdbd84ab97
commit 70a2910b74

31
run.sh Executable file
View file

@ -0,0 +1,31 @@
#!/usr/bin/env bash
echo "Starting the application..."
PORT=5050
cleanup() {
echo "Stopping the application..."
pkill -f "panel serve main.py"
}
trap cleanup EXIT
poetry run panel serve main.py --port $PORT &
# if 'nc' is available, use it to check if the port is open
if ! command -v nc &> /dev/null
then
echo "'nc' command could not be found, please install it for better port checking."
sleep 2
else
# wait until port is open
while ! nc -z localhost $PORT; do
sleep 0.5
done
fi
poetry run python -m webbrowser http://localhost:$PORT
# wait until user kills the process (by hitting ctrl+c or otherwise)
wait