Files
blackroad/bin/blackroad-gui
Alexa Amundson 78fbe80f2a Initial monorepo — everything BlackRoad in one place
bin/       230 CLI tools (ask-*, br-*, agent-*, roadid, carpool)
scripts/   99 automation scripts
fleet/     Node configs and deployment
workers/   Cloudflare Worker sources (roadpay, road-search, squad webhooks)
roadc/     RoadC programming language
roadnet/   Mesh network (5 APs, WireGuard)
operator/  Memory system scripts
config/    System configs
dotfiles/  Shell configs
docs/      Documentation

BlackRoad OS — Pave Tomorrow.

RoadChain-SHA2048: d1a24f55318d338b
RoadChain-Identity: alexa@sovereign
RoadChain-Full: d1a24f55318d338b24b60bad7be39286379c76ae5470817482100cb0ddbbcb97e147d07ac7243da0a9f0363e4e5c833d612b9c0df3a3cd20802465420278ef74875a5b77f55af6fe42a931b8b635b3d0d0b6bde9abf33dc42eea52bc03c951406d8cbe49f1a3d29b26a94dade05e9477f34a7d4d4c6ec4005c3c2ac54e73a68440c512c8e83fd9b1fe234750b898ef8f4032c23db173961fe225e67a0432b5293a9714f76c5c57ed5fdf35b9fb40fd73c03ebf88b7253c6a0575f5afb6a6b49b3bda310602fb1ef676859962dad2aebbb2875814b30eee0a8ba195e482d4cbc91d8819e7f38f6db53e8063401649c77bb994371473cabfb917fb53e8cbe73d60
2026-03-14 17:08:41 -05:00

137 lines
4.3 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/usr/bin/env bash
# BlackRoad GUI - Quick launcher for terminal GUI system
# Color functions
c_pink() { printf '\033[38;5;205m'; }
c_blue() { printf '\033[38;5;75m'; }
c_purple() { printf '\033[38;5;141m'; }
c_orange() { printf '\033[38;5;208m'; }
c_gray() { printf '\033[38;5;240m'; }
c_reset() { printf '\033[0m'; }
show_menu() {
clear
c_pink
printf "╔══════════════════════════════════╗\n"
printf "║ BlackRoad Terminal GUI v2.0 ║\n"
printf "╚══════════════════════════════════╝\n"
c_reset
printf "\n"
c_blue; printf "LAYOUTS:\n"; c_reset
printf " 1. Grid 2×2 - Four equal panes\n"
printf " 2. Grid 3×3 - Nine equal panes\n"
printf " 3. Dashboard - Header + 3 columns\n"
printf " 4. Split V - Left/right split\n"
printf " 5. Split H - Top/bottom split\n"
printf " 6. Stack - Vertical stack\n"
printf "\n"
c_purple; printf "WINDOWS:\n"; c_reset
printf " w. Create window - New terminal window\n"
printf " l. List windows - Show all windows\n"
printf " d. Window demo - Interactive demo\n"
printf "\n"
c_orange; printf "WEB:\n"; c_reset
printf " u. Render URL - Display web page\n"
printf " f. Render file - Display HTML file\n"
printf " s. Serve mode - Local HTML server\n"
printf "\n"
c_gray; printf "OTHER:\n"; c_reset
printf " t. Test ANSI - Check terminal\n"
printf " h. Help - Full guide\n"
printf " q. Quit\n"
printf "\n"
}
main() {
while true; do
show_menu
read -rsn1 -p "Select option: " choice
printf "\n\n"
case "$choice" in
1) ~/br-container-fixed.sh grid 2 2 ;;
2) ~/br-container-fixed.sh grid 3 3 ;;
3) ~/br-container-fixed.sh dashboard ;;
4) ~/br-container-fixed.sh split-v ;;
5) ~/br-container-fixed.sh split-h ;;
6) ~/br-container-fixed.sh stack 4 ;;
w)
read -p "Window name: " name
read -p "Rows [24]: " rows
read -p "Cols [80]: " cols
~/br-window-manager-fixed.sh create "${name:-Demo}" "${rows:-24}" "${cols:-80}"
;;
l) ~/br-window-manager-fixed.sh list ;;
d) ~/br-window-manager-fixed.sh demo ;;
u)
read -p "URL: " url
~/br-web-render-fixed.sh "$url"
;;
f)
read -p "File path: " file
~/br-web-render-fixed.sh "$file"
;;
s)
read -p "HTML file: " file
~/br-web-render-fixed.sh --serve "$file"
;;
t) ~/test-ansi-codes.sh ;;
h) cat ~/BR_GUI_SYSTEM_GUIDE.md | less ;;
q|Q)
c_pink; printf "\nGoodbye! 👋\n"; c_reset
break
;;
*)
c_orange; printf "Invalid option: %s\n" "$choice"; c_reset
sleep 2
;;
esac
if [[ "$choice" != "q" && "$choice" != "Q" ]]; then
printf "\n"
read -rsn1 -p "Press any key to continue..."
fi
done
}
if [[ "$1" == "--help" || "$1" == "-h" ]]; then
cat <<'HELP'
BlackRoad GUI - Terminal GUI System
USAGE:
br-gui Interactive menu
br-gui grid 2 2 Direct command
br-gui --help This help
AVAILABLE COMMANDS:
Layouts: grid, dashboard, split-v, split-h, stack
Windows: create, list, demo
Web: url, file, serve
For full documentation:
cat ~/BR_GUI_SYSTEM_GUIDE.md
HELP
elif [[ -n "$1" ]]; then
# Direct command mode
case "$1" in
grid) ~/br-container-fixed.sh grid "${2:-2}" "${3:-2}" ;;
dashboard) ~/br-container-fixed.sh dashboard ;;
split-v) ~/br-container-fixed.sh split-v ;;
split-h) ~/br-container-fixed.sh split-h ;;
stack) ~/br-container-fixed.sh stack "${2:-3}" ;;
test) ~/test-ansi-codes.sh ;;
*) c_orange; printf "Unknown command: %s\n" "$1"; c_reset ;;
esac
else
main
fi