Replace BTCPay payments with free pre-orders + live ready-status

- server.js: order store with K484-XXXX codes, stand assignment, SSE
  status to customers, passcode-gated staff API, persists to .data/
- staff.html at /staff: order board with Mark ready / Collected / Cancel
- index.html: drop BTCPay API key, invoices, QR, BTC price; orders now
  server-backed with live PREPARING -> READY updates and stand location
- e2e-test.js rewritten for the order loop (14 checks, all passing)
- README added; .gitignore covers server/.data
This commit is contained in:
avi 2026-09-28 15:09:49 -05:00
commit 582e571eff
10 changed files with 656 additions and 1096 deletions

View file

@ -1,15 +1,12 @@
# Copy to .env and fill in. The server also accepts settings at runtime
# via the ⚙️ settings modal (POST /api/settings), which writes .env for you.
# KITCHEN 484 server config — copy to .env and edit.
# The server reads this file at startup (real env vars win).
# Port the server listens on
PORT=8787
# Your BTCPay Server (regtest: http://localhost:15808, mainnet: https://btcpay.yourhost.com)
BTCPAY_URL=
BTCPAY_STORE=
BTCPAY_API_KEY=
# Passcode for the staff board (/staff). Staff features stay disabled
# until this is set. Generate one: openssl rand -hex 4
STAFF_PASSCODE=
*** Set automatically by POST /api/webhook/register, or paste it manually
# after creating a webhook in BTCPay (Store → Settings → Webhooks).
WEBHOOK_SECRET=
*** Public URL of THIS backend (what BTCPay can reach), e.g. https://kitchen.example.com
WEBHOOK_PUBLIC_URL=
# Optional: where orders.json lives (default: server/.data)
#DATA_DIR=/var/lib/kitchen484