srs-api/README.md
Aswin Biju 61514fb82f
All checks were successful
deploy / test (push) Successful in 1m33s
deploy / deploy (push) Successful in 18s
feat(users): added a wizard to reset a password and supporting services for the srs PWA
2026-11-04 20:44:36 +05:30

1.1 KiB

srs-api

Backend for SRS: the order parser, the WhatsApp conversation flow, and the API for the Flutter PWA. One Node/TypeScript service (Fastify) with a SQLite database. It runs on the server under pm2, behind Caddy.

Flutter PWA ──HTTPS──▶ Caddy ──/api/*──▶ ┐
                                          ├─▶ srs-api (127.0.0.1:8080) ──▶ SQLite file
Hermes plugin ──localhost + secret──────▶ ┘        │
                                                   └─▶ WhatsApp bridge (127.0.0.1:3000): replies, 3 PM summary

Run it on your computer

Needs Node 22 or newer.

npm install
cp .env.example .env       
npm run migrate             # creates ./data/srs.db
npm run user create         # a short wizard: choose Admin or User, then set a password
npm run user password       # set a new password for an admin or a user
npm run user list           # show every account
npm run shop create         # add a shop (name + unique code)
npm run shop list           # show every shop
npm run dev                 # http://127.0.0.1:8080
npm test
npm run typecheck