| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #!/bin/bash
- # Simple HTTP server for viewing the dashboard
- # Auto-opens browser and shuts down after timeout
- # Usage: ./serve.sh [port] [timeout_seconds]
- PORT=${1:-8000}
- TIMEOUT=${2:-15}
- cd "$(dirname "$0")"
- echo "🚀 Starting HTTP server on port $PORT..."
- echo "📊 Opening dashboard in browser..."
- echo "⏱️ Server will auto-shutdown in ${TIMEOUT} seconds"
- echo ""
- # Start server in background
- python3 -m http.server $PORT > /dev/null 2>&1 &
- SERVER_PID=$!
- # Wait for server to start
- sleep 1
- # Open browser
- if command -v open > /dev/null; then
- # macOS
- open "http://localhost:$PORT"
- elif command -v xdg-open > /dev/null; then
- # Linux
- xdg-open "http://localhost:$PORT"
- elif command -v start > /dev/null; then
- # Windows
- start "http://localhost:$PORT"
- else
- echo "⚠️ Could not auto-open browser. Please visit: http://localhost:$PORT"
- fi
- echo "✅ Dashboard opened in browser"
- echo "⏳ Waiting ${TIMEOUT} seconds for page to load..."
- # Countdown
- for i in $(seq $TIMEOUT -1 1); do
- printf "\r⏱️ Shutting down in %2d seconds... (Press Ctrl+C to keep running)" $i
- sleep 1
- done
- echo ""
- echo "🛑 Stopping server..."
- kill $SERVER_PID 2>/dev/null
- echo "✅ Server stopped. Dashboard data is cached in your browser."
|