Files
pulse/scripts/demo/README.md
T
jared 3572d5ba35
Lint / JS (eslint) (push) Successful in 18s
Lint / Notify on failure (push) Skipped
Security / JS Security (npm audit) (push) Failing after 9s
Test / JS Tests (jest) (push) Successful in 9s
Lint / Deploy (push) Successful in 6s
README: add walkthrough GIF, architecture diagram and gallery; add demo seed and capture scripts
2026-10-03 01:19:43 -04:00

1.3 KiB

Demo environment (for README screenshots)

Fictional data only. A throwaway MariaDB on loopback, the PULSE server and three local workers that run harmless commands.

D=$(mktemp -d); rsync -a --exclude .git . $D/pulse && cd $D/pulse && npm install
mariadb-install-db --no-defaults --datadir=$D/db --auth-root-authentication-method=normal --skip-test-db
mariadbd --no-defaults --datadir=$D/db --socket=$D/sock --port=3399 --bind-address=127.0.0.1 --user=root &
mariadb --no-defaults -S $D/sock -e "CREATE DATABASE pulse; CREATE USER 'pulse'@'127.0.0.1' IDENTIFIED BY 'demo-only'; GRANT ALL ON pulse.* TO 'pulse'@'127.0.0.1'"
printf 'PORT=8400\nHOST=127.0.0.1\nDB_HOST=127.0.0.1\nDB_PORT=3399\nDB_NAME=pulse\nDB_USER=pulse\nDB_PASSWORD=demo-only\nWORKER_API_KEY=demo-worker-key\n' > .env
node server.js &
for n in 1 2 3; do (cd worker && WORKER_NAME=node-0$n PULSE_SERVER=http://127.0.0.1:8400 PULSE_WS=ws://127.0.0.1:8400 WORKER_API_KEY=demo-worker-key node worker.js &); done
python3 scripts/demo/seed.py       # workflows, executions, schedules (via the real API)
python3 scripts/demo/capture.py    # screenshots + GIF -> docs/img/

The server trusts Authelia Remote-User headers, so the scripts send them directly. For the demo only, raise apiLimiter.max in server.js (the screenshot run exceeds 300 requests / 15 min). Requires playwright and pillow.