Skip to main content

Project Structure

How the Handlet monorepo is organized.

Handlet is a Turborepo monorepo with a Next.js web app, Supabase schema, shared packages, and QA documentation.

apps/
├── web
└── e2e
packages/
├── ui
├── supabase
├── next
├── cms
├── n8n
├── unipile
└── vapi
documents/
└── qa

Web app routes

apps/web/
├── app/(marketing)
├── app/(auth)
├── app/home/(user)
├── app/home/[account]
├── app/admin
└── app/api

Code organization

  • Route-specific components live in _components.
  • Route-specific server logic lives in _lib/server.
  • Shared UI should use @kit/ui primitives.
  • Tenant-scoped product data uses account_id.

Finding your way

Looking for...Location
Public contentapps/web/content
App routesapps/web/app
Configapps/web/config
Supabase schemasapps/web/supabase/schemas
Migrationsapps/web/supabase/migrations
Shared UIpackages/ui
QA route docsdocuments/qa
© 2026 Handlet. All rights reserved.

AI Assistance: Handlet uses AI for intent recognition and, where enabled, drafts, summaries, quote support, social content and call assistance. AI output can be wrong and should be checked before use. Learn More