v3: Next.js and Railway

Spec: SPEC. Build log: PROGRESS. Merged in PRs #16, #20, #21, #22 and #23.

  • The frontend moved to Next.js with a custom Node server that serves the app and proxies /api and the WebSockets.
  • The app deploys to Railway, with preview and production environments defined as code and deployed by GitHub Actions.