Skip to content

Infrastructure and Services

  • Purpose: runs the backend API in hosted environments.
  • Evidence in repo: .github/workflows/deploy.yml deploys selected branches/environments to Heroku apps.
  • Purpose: primary database for users, posts, messages, chats, subscriptions, and other app entities.
  • Evidence in repo: src/database/models/*, test workflow starts MongoDB service.
  • Purpose: supports real-time/event patterns (for example pub/sub-backed behavior).
  • Evidence in repo: Redis service is started in CI tests, and project includes Redis/pubsub packages.
  • Purpose: authentication-related workflows and local auth emulation for tests/dev.
  • Evidence in repo: start:emulator and test scripts run Firebase Auth emulator; utilities include Firebase admin setup.
  • Purpose: payment/subscription events.
  • Evidence in repo: /stripe webhook route in src/server.js, payment module/resolvers in src/api/modules/payment/.
  • Purpose: transactional and notification emails.
  • Evidence in repo: src/templates/*.hbs, src/helpers/sendgridmail.js, mail helpers/utilities.
  • Purpose: integrates bug/safety workflow automation.
  • Evidence in repo: /jira webhook route and src/webhooks/jira.js.
  • Purpose: automated linting, testing, and deployments.
  • Evidence in repo: .github/workflows/lint.yml, test.yml, deploy.yml.
  • Purpose: runs checks before code is committed.
  • Current behavior in this repo: pre-commit runs npm test.
  • Value: catches failing tests before changes are shared.
  • Purpose: static analysis for JavaScript code quality and consistency.
  • Current behavior in this repo: lint script and CI lint workflow.
  • Purpose: automated tests for backend behavior.
  • Current behavior in this repo: PR test workflow with service dependencies.