Skip to content
<matthew />
cd ../work

/* case study */

CADchat: 3D Model Review

A 3D CAD model viewer with persisted design-review comments, built as a type-safe Turborepo monorepo.

// impact: End-to-end type safety from Prisma to React Three Fiber via tRPC

// Context

A design-review tool: inspect a 3D model in the browser and leave review comments with an approval status.

// Challenges

  • ›Keep the frontend, API and database contracts in sync
  • ›Keep the browser away from direct database access

// Approach

  • ›A Turborepo + pnpm monorepo: apps/web (Next.js + R3F), apps/api (NestJS + tRPC), and shared database/trpc/ui packages
  • ›Shared Zod schemas and a tRPC router for end-to-end types
  • ›Prisma on Supabase Postgres with RLS and no public policies, so all data flows through the API
  • ›Two Vercel projects deployed with GitHub Actions CI

// Outcomes

  • ›Live demo on Vercel
  • ›A clean, layered architecture that mirrors a production setup

// next case study

react-flex-rating