| Build & Dev Monorepo Engine | Turborepo + pnpm workspaces Atomic commits, shared configs, cached builds | Enables unified TypeScript configs, shared ESLint presets, and instant task pipeline caching across @crwsync/backend, @crwsync/dash, and @crwsync/web while minimizing dependency bloat via strict symlink isolation. |
| Core API Server Framework | NestJS 11 (TypeScript) Strict modular DI, typed DTOs, custom RBAC guards | Enterprise architecture with declarative dependency injection, class-validator input sanitization, and composable execution guards that enforce dual-layer RBAC across both REST controllers and Socket.IO gateways. |
| Frontend Client Framework | Next.js 16 + React 19 Server components, Radix UI primitives, Tailwind CSS v4 | Combines blazing-fast server-rendered landing pages (@crwsync/web) with a highly interactive, accessible, client-side stateful application shell (@crwsync/dash) optimized for sub-100ms UI feedback. |
| Real-Time Real-Time Layer | Socket.IO + Redis 7 Pub/Sub Horizontal WebSocket scaling across Swarm replicas | Separates ephemeral real-time socket broadcasts from relational database transactions. The Redis adapter distributes room broadcasts across multiple NestJS replicas with zero packet loss. |
| Background Async Processing | BullMQ + Redis 7 Decoupled transactional job queues with retry backoff | Isolates heavy background jobs (Handlebars email rendering, invite token dispatch, digest generation) from HTTP threads with configurable exponential retry policies and dead-letter queues. |
| Persistence Database | PostgreSQL 16 + Prisma 7 @prisma/adapter-pg driver, relational integrity | Guarantees strict ACID transactions for multi-tenant organizations, projects, boards, and task columns. Uses the high-performance @prisma/adapter-pg driver with automated schema migrations. |
| Storage Object Storage | MinIO (dev) + S3-compatible (prod) Presigned uploads, workspace-scoped access gating | Powers avatars, task attachments, chat media, and the dedicated Files workspace module. The public avatar route stays open while workspace file routes remain auth-gated, since attachments are private to a workspace. |
| DevOps Orchestration | Docker Swarm Declarative stack.yml, rolling zero-downtime updates, memory limits | Lightweight container orchestration via native Docker daemon without Kubernetes overhead. Features isolated overlay networks, automatic health checks, rolling zero-downtime deploys, and 512MB RAM caps. |