Tech stack

activetype/resource

Anabatic — Tech stack (internal engagements)

TL;DR

Scope: This memo covers internal Anabatic tooling only ([[Areas/Anabatic/Anabatic]] engagements). Personal, client, or other employment stacks elsewhere in the vault are out of scope here.

Inside that boundary, products are usually split backend repo + frontend repo: NestJS APIs, Angular SPAs, PostgreSQL persistence, Redis (caching / queues / session-adjacent use per app), Firebase for push notifications, and multi-stage environments (dev → staging → UAT → production). Authentication is centralized in Portal (SSO; vault path alias anabatic-sso — [[Projects/anabatic-sso/anabatic-sso]]); consuming apps rely on HTTP cookies issued by that flow.

Repository layout

  • Separate repositories per concern — typically one backend (NestJS) and one frontend (Angular) per product unless history says otherwise.

Backend

  • Runtime / framework: [[Resources/Tech/NestJS/NestJS]]

Frontend

  • Framework: [[Resources/Tech/Angular/Angular]]

Data & infra

ConcernDefault
Primary database[[Resources/Tech/PostgreSQL/PostgreSQL]]
Redis[[Resources/Tech/Redis/Redis]] — patterns vary (cache, queues); confirm per repo

Runtime environments

  • Naming / progression: dev → staging → UAT → production (exact URLs and config live per project hub / repo environment*.ts and backend env files).

Mobile / device messaging

  • Push notifications: [[Resources/Tech/Firebase/Firebase]] (FCM — project-specific keys and workflows live on product hubs).

Authentication & authorization

  • Portal (SSO): All Anabatic internal apps authenticate through Portal ([[Projects/anabatic-sso/anabatic-sso]]).
  • Mechanism: Cookie-based session between Portal/IdP, APIs, and SPAs — details (login redirect, cookie names, middleware, refresh) belong in [[Projects/anabatic-sso/anabatic-sso]] and linked runbooks/context.

Planned deep-dives (add when ready)

Paste or author dedicated notes under [[Projects/anabatic-sso/anabatic-sso]] / Projects/anabatic-sso/context/:

  • End-to-end auth flow (login, callback, cookie scope, API verification).
  • Menu sourcing and entitlement wiring.
  • RBAC model (roles, assignments, enforcement layers).
  • Registering a new app with Portal / IdP checklist.

Related

  • [[Areas/Anabatic/Anabatic]]
  • [[Projects/anabatic-sso/anabatic-sso]]
  • Internal product hubs (examples): [[Projects/anabatic-claim/anabatic-claim]], [[Projects/anabatic-conexus/anabatic-conexus]], [[Projects/anabatic-contract-management-system/anabatic-contract-management-system]]
  • Contrast — non-employer / LumenDev defaults: [[Resources/Tech/Personal default fullstack stack]]