Minimal web UI + API service for triggering local bash scripts over your LAN.
- Backend (Node/Express): runs on the server that has the scripts.
- Frontend (static): runs anywhere; points at the backend with
API_BASE_URL.
PORT(default8080)SCRIPT_DIR(default/opt/bunyfm)BUNY_SAY_SCRIPT(defaultbuny-say.sh)CORS_ORIGIN(default*, or comma‑separated origins)MAX_TEXT_LENGTH(default0= no limit)
docker build -t bunyfm-backend ./backend
docker run -d \
--name bunyfm-backend \
-p 8080:8080 \
-e SCRIPT_DIR=/opt/bunyfm \
-e BUNY_SAY_SCRIPT=buny-say.sh \
-e CORS_ORIGIN=http://localhost:3000 \
-v ~/djio/bunyfm:/opt/bunyfm:ro \
bunyfm-backendIf your script is actually named
buny-sah.sh, setBUNY_SAY_SCRIPT=buny-sah.sh.
API_BASE_URL(defaulthttp://stardust.dannykansas.com:9099)
The UI also lets you override and save the server URL in localStorage.
docker build -t bunyfm-frontend ./frontend
docker run -d \
--name bunyfm-frontend \
-p 3000:80 \
-e API_BASE_URL=http://stardust.dannykansas.com:9099 \
bunyfm-frontend# Backend
cd backend
npm install
npm run dev
# Frontend
cd frontend
# open index.html in your browser and edit config.js as needed