mirror of
https://github.com/crabwise-ai/crabwalk.git
synced 2026-08-14 00:57:52 +00:00
add QR code to CLI startup banner
Uses qrencode to show scannable QR for first IPv4 network URL. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.5
parent
cf8ac7ca67
commit
551543682f
+21
-1
@@ -35,6 +35,15 @@ get_network_ips() {
|
||||
fi
|
||||
}
|
||||
|
||||
# Show QR code for URL
|
||||
show_qr() {
|
||||
local url="$1"
|
||||
if command -v qrencode &>/dev/null; then
|
||||
echo ""
|
||||
qrencode -t ANSIUTF8 -m 2 "$url" 2>/dev/null || true
|
||||
fi
|
||||
}
|
||||
|
||||
# Check if running
|
||||
is_running() {
|
||||
if [ -f "$PID_FILE" ]; then
|
||||
@@ -52,6 +61,7 @@ show_banner() {
|
||||
local port="${1:-3000}"
|
||||
local host="${2:-0.0.0.0}"
|
||||
local version=$(get_version)
|
||||
local network_url=""
|
||||
|
||||
echo ""
|
||||
echo -e "🦀 ${GREEN}Crabwalk${NC} v${version}"
|
||||
@@ -60,10 +70,20 @@ show_banner() {
|
||||
if [ "$host" = "0.0.0.0" ]; then
|
||||
echo -e " ➜ Local: ${CYAN}http://localhost:${port}/monitor${NC}"
|
||||
for ip in $(get_network_ips); do
|
||||
# Use first IPv4 for QR code
|
||||
if [ -z "$network_url" ] && [[ "$ip" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
||||
network_url="http://${ip}:${port}/monitor"
|
||||
fi
|
||||
echo -e " ➜ Network: ${CYAN}http://${ip}:${port}/monitor${NC}"
|
||||
done
|
||||
else
|
||||
echo -e " ➜ Server: ${CYAN}http://${host}:${port}/monitor${NC}"
|
||||
network_url="http://${host}:${port}/monitor"
|
||||
echo -e " ➜ Server: ${CYAN}${network_url}${NC}"
|
||||
fi
|
||||
|
||||
# Show QR code for network access
|
||||
if [ -n "$network_url" ]; then
|
||||
show_qr "$network_url"
|
||||
fi
|
||||
echo ""
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user