PRINTWORKS

image
Back to project list
TurborepopnpmNext.jsViteReact
Project Overview

A pnpm + Turborepo monorepo demo, one shared component library consumed by two independently-deployed apps on different build tools.

Tech Stack
  • Workspace: pnpm workspaces + Turborepo (task graph, caching)
  • Shared UI (packages/ui): React components, built with tsup (JS) + tsc (types), React as peer dependency
  • Shared TS config (packages/tsconfig): base + framework-specific variants, extended by every package
  • App 1 — Press (apps/press): Next.js 16, App Router, marketing site
  • App 2 — Desk (apps/desk): Vite + React, dashboard SPA
  • Deployment: Vercel (monorepo support, two independent projects from one repo)
Features
  • One Button component shared across two different bundlers (Turbopack, esbuild)
  • Internal packages linked via workspace:*
  • Turbo caching (FULL TURBO) and cascade rebuilds when ui changes