Tammwe Monorepo – Frontpage, Marketplace, Backoffice, Blog, and Docs

Monorepo for the Tammwe platform, managed with Turborepo and Yarn Workspaces, hosting the frontpage, marketplace, backoffice, blog, and docs plus shared packages for UI, database, linting, Tailwind, TypeScript, and utilities. Deployed to Vercel with per-app build gating

Tammwe Monorepo – Frontpage, Marketplace, Backoffice, Blog, and Docs

Technologies Used

Next.js 14 (App Router)TurborepoNextAuthDrizzle ORMTypeScriptTailwind CSSMySQLSanity CMSYarn WorkspacesStripe ConnectResendBrevoPlanetScaleVitestStorybookUploadThingPusherPostHogAxiom

Tammwe

Tammwe is a modern, full-stack platform built inside a single Turborepo + Yarn workspaces monorepo, designed for fast shipping without compromising quality, safety, or developer experience.

🧱 Architecture

Five Next.js 14 (App Router) applications ship together as one cohesive system:

  • Frontpage – a polished, high-performance marketing site
  • Marketplace – a Stripe Connect–powered platform with rich seller tooling
  • Admin Backoffice – internal management and moderation tools
  • Blog – content-driven pages powered by Sanity CMS
  • Docs & Storybook – living documentation and design system playground
    All apps consume shared, versioned packages to ensure consistency and reuse across the stack.

📦 Shared Packages

  • Adinkra UI – a custom React component library
  • Data Layer – Drizzle ORM with MySQL / PlanetScale
  • Config Presets – TypeScript, Tailwind CSS, ESLint
  • Utilities – shared helpers and cross-cutting logic

🔐 Platform Services

  • Authentication: NextAuth with Drizzle adapters
  • Payments: Stripe Connect
  • Realtime: Pusher
  • Observability: PostHog & Axiom
  • Uploads: UploadThing
  • Email: Resend & Brevo

🧪 Quality & DX

  • Storybook documents and validates the design system
  • Vitest provides fast, reliable test coverage for apps and packages
  • Shared configs guarantee a consistent developer experience across the monorepo

🚀 CI & Deployment

  • Optimized for Vercel
  • Smart build gating ensures only affected apps deploy
  • Core package changes can trigger cross-app rebuilds
  • Fast iteration without sacrificing safety or correctness

🛠 Local Development

Getting started is intentionally simple:

yarn install
yarn dev

Run a single app when needed:

yarn dev:<app>

Database workflows are shared and standardized:

yarn db:dev
yarn db:migrate
yarn db:seed

Every app automatically inherits shared tooling and configuration, keeping setup minimal and productivity high.

Project Gallery

Interested in working together?

I'm always open to discussing new projects and opportunities.