Comprehensive technology inventory for the Forma3D.Connect platform.
Last updated: March 2026
Languages
| Technology |
Usage |
| TypeScript |
Primary language — frontend, backend, shared libs, scripts |
| JavaScript |
k6 load tests, Slicer API (BambuStudio wrapper) |
| Shell (Bash) |
Deployment, registry, backup, and build-agent scripts |
| SQL |
Prisma migrations, raw queries |
| Gherkin |
Acceptance test feature files (Cucumber/BDD) |
| Python |
Zensical docs site toolchain (plantuml-markdown) |
| Markdown |
Documentation, ADRs, runbooks, prompts, README files |
| PlantUML |
Architecture diagrams (C4, ERD, sequences, state machines) |
Frontend
| Technology |
Version |
Purpose |
| React |
19 |
UI framework |
| Vite |
7 |
Build tooling and dev server |
| Tailwind CSS |
4 |
Utility-first styling |
| TanStack Query |
5 |
Server state management |
| React Router |
6 |
Client-side routing |
| Headless UI |
2 |
Accessible UI primitives |
| Heroicons |
2 |
Icon library |
| ECharts |
6 |
Dashboard charts and visualizations |
| Socket.IO Client |
4 |
Real-time WebSocket communication |
| Zod |
4 |
Schema validation |
| clsx |
— |
Conditional className utility |
| date-fns |
4 |
Date formatting and manipulation |
| react-hot-toast |
2 |
Toast notifications |
| idb |
8 |
IndexedDB wrapper for offline storage |
Progressive Web App (PWA)
| Technology |
Purpose |
| vite-plugin-pwa |
PWA integration with Vite (injectManifest strategy) |
| Workbox |
Service worker tooling (precaching, routing, strategies, expiration) |
| web-push |
Server-side push notification delivery |
| @vite-pwa/assets-generator |
PWA icon and splash screen generation |
Backend
| Technology |
Version |
Purpose |
| Node.js |
≥20 |
Runtime |
| NestJS |
11 |
Application framework |
| Express |
5 |
HTTP server (NestJS platform) |
| Prisma |
5 |
ORM and database client |
| Socket.IO |
4 |
Real-time WebSocket server |
| BullMQ |
5 |
Distributed job/event queues |
| Bull Board |
6 |
Queue monitoring dashboard |
| Nodemailer |
7 |
Transactional email sending |
| Handlebars |
4 |
Email templates |
| Helmet |
8 |
HTTP security headers |
| Swagger / OpenAPI |
— |
Auto-generated API documentation (@nestjs/swagger) |
| Pino |
10 |
Structured JSON logging |
| argon2 |
— |
Password hashing (argon2id) |
| express-session |
— |
Session-based authentication |
| connect-redis |
— |
Redis-backed session store |
| class-validator / class-transformer |
— |
DTO validation and transformation |
| RxJS |
7 |
Reactive programming (NestJS internals, event streams) |
| axios |
— |
HTTP client for external API calls |
| http-proxy-middleware |
— |
API gateway proxying |
| @nestjs/throttler |
— |
Rate limiting |
| @nestjs/schedule |
— |
Cron jobs and scheduled tasks |
| @nestjs/terminus |
— |
Health checks |
| @nestjs/microservices |
— |
Inter-service communication |
| @nestjs/event-emitter |
— |
In-process event bus |
| @nestjs/cache-manager |
— |
Caching layer |
Microservices
| Service |
Responsibility |
| Gateway |
API gateway, auth, sessions, WebSocket proxy, Swagger aggregation |
| Order Service |
Orders, Shopify webhooks, fulfillment, inventory |
| Print Service |
Print jobs, SimplyPrint integration |
| Shipping Service |
Shipments, SendCloud integration |
| GridFlock Service |
Gridfinity STL generation pipeline |
| Slicer |
BambuStudio-based 3D model slicing (Node.js/Express wrapper) |
3D / STL Generation
| Technology |
Purpose |
| JSCAD (@jscad/modeling) |
Programmatic 3D geometry (Gridfinity baseplates) |
| @jscad/stl-serializer |
STL binary output from JSCAD models |
| BambuStudio (Slicer) |
G-code slicing for 3D printers (containerized) |
Database & Data
| Technology |
Purpose |
| PostgreSQL |
Primary relational database |
| Prisma ORM |
Schema-first migrations, type-safe queries |
| prisma-uml |
ERD generation from Prisma schema |
| Redis 7 |
Session store, Socket.IO adapter, BullMQ broker, caching |
| ClickHouse |
Log storage and analytics (OpenTelemetry sink) |
External Integrations (SaaS)
| Service |
Purpose |
| Shopify |
E-commerce platform — orders, webhooks, OAuth, product sync |
| SimplyPrint |
Print farm management — print jobs, printer status |
| SendCloud |
Shipping — labels, tracking, carrier integration |
Cloud & Infrastructure
| Technology |
Purpose |
| DigitalOcean Droplets |
Application hosting (staging, production) |
| DigitalOcean Container Registry |
Docker image registry |
| DigitalOcean Spaces |
Object storage (ClickHouse log backups) |
| Docker |
Application containerization |
| Docker Compose |
Multi-container orchestration |
| Traefik 3 |
Reverse proxy, TLS termination, routing |
| Let's Encrypt |
Automated TLS certificate provisioning (via Traefik ACME) |
| Nginx |
Static file serving (web app, docs, CodeCharta) |
CI/CD
| Technology |
Purpose |
| Azure DevOps Pipelines |
CI/CD orchestration (build, test, deploy) |
| Nx (affected) |
Incremental builds, task orchestration, dependency graph |
| Docker Buildx |
Multi-stage container builds |
| Self-hosted build agents |
DigitalOcean Droplet build runners |
Pipeline Stages
Validate & Test → Code Quality (SonarCloud) → Build & Package → CodeCharta → Deploy Staging → Acceptance Tests → Load Tests → Production
Observability & Monitoring
| Technology |
Purpose |
| Sentry |
Error tracking, performance monitoring, profiling (frontend + backend) |
| OpenTelemetry |
Distributed tracing and log collection |
| OpenTelemetry Collector |
Telemetry pipeline (traces → ClickHouse) |
| Grafana |
Dashboards and log visualization (ClickHouse datasource) |
| ClickHouse |
Log and trace storage |
| Uptime Kuma |
Uptime monitoring and status page |
| Dozzle |
Real-time Docker log viewer |
| Pino |
Structured application logging |
Security
| Technology |
Purpose |
| Syft + Grype |
CycloneDX SBOM generation (Syft) and CVE scanning (Grype) — open-source tools by Anchore, run in CI/CD |
| Cosign (Sigstore) |
Container image signing and verification |
| Syft |
SBOM (Software Bill of Materials) generation |
| Helmet |
HTTP security headers |
| argon2 |
Password hashing |
Code Quality & Analysis
| Technology |
Purpose |
| SonarCloud |
Static analysis, code smells, coverage tracking, architecture enforcement |
| CodeCharta |
3D city visualization of code metrics (from SonarCloud + git) |
| ESLint 9 |
Linting (TypeScript, React, JSX a11y, import rules) |
| Prettier |
Code formatting |
Testing
| Technology |
Purpose |
| Vitest |
Frontend unit tests |
| Jest |
Backend unit tests |
| Testing Library |
React component testing (react, user-event, jest-dom) |
| MSW (Mock Service Worker) |
API mocking for frontend tests |
| SuperTest |
HTTP integration testing for NestJS |
| Playwright |
End-to-end browser testing |
| playwright-bdd |
BDD layer for Playwright (Gherkin features) |
| k6 |
Load and performance testing |
Documentation
| Technology |
Purpose |
| Zensical |
Documentation site generator (hosted, auto-built in pipeline) |
| PlantUML (plantuml-markdown) |
Architecture diagrams rendered to SVG during build |
| EventCatalog |
Event-driven architecture documentation (services, events, flows) |
| Swagger / OpenAPI |
Auto-generated API reference |
| ADRs (Architecture Decision Records) |
Architectural decision log (66+ records) |
| Technology |
Purpose |
| Cursor IDE |
Primary development environment |
| Claude Opus 4.6 |
Primary AI model (code generation, refactoring, architecture) |
| SpecStory |
AI conversation history and context persistence (780+ sessions) |
| Nanoclaw |
Agentic AI team framework (Docker-isolated agents) |
| Nx MCP Server |
Nx workspace intelligence for AI agents |
| .cursorrules / AGENTS.md |
AI behavior rules and workspace conventions |
Agentic Team (Nanoclaw)
| Agent |
Role |
| Cody Codewell |
Software Engineer |
| Ryan "Ops" O'Malley |
DevOps Engineer |
| Sam "Rack" Reynolds |
Infrastructure Engineer (planned) |
Build & Package Management
| Technology |
Purpose |
| Nx 22 |
Monorepo task runner, project graph, affected commands |
| pnpm 9 |
Package manager |
| Vite 7 |
Frontend bundler |
| Webpack |
Backend bundler (NestJS services) |
| SWC |
Fast TypeScript/JavaScript compilation |
| ts-node / tsx |
TypeScript execution for scripts and seeds |
Key Architectural Patterns
| Pattern |
Implementation |
| Monorepo |
Nx with strict library boundaries |
| Microservices |
5 NestJS services + API gateway |
| Event-driven |
BullMQ + Redis for async inter-service events |
| RBAC |
Tenant → User → Role → Permission (PostgreSQL) |
| PWA |
Service worker, offline support, push notifications |
| Schema-first |
Prisma schema as single source of truth |
| C4 Model |
Context, Container, Component, Code diagrams |
| Trunk-based development |
Short-lived branches, CI gates |