← Crafts
Latch preview

Latch

Platform tooling Solo engineer

Solo-engineer full-stack bootstrap — React, Hono, tRPC, Better Auth, Supabase, Drizzle, and BullMQ in one Turborepo template.

Overview

Starting a new product means re-wiring auth, API boundaries, database types, and worker queues every time. Latch maps to handof (of on npm): a pnpm Turborepo with web, API, and worker apps, Supabase local tooling, and governance scripts that keep generated types in sync.

Stack

  • apps/web: React + Vite + TanStack Router
  • apps/api: Hono with tRPC (/trpc/*), Better Auth at /api/auth/*, creator-ops routes
  • apps/worker: BullMQ + Redis background jobs
  • Supabase Postgres/Storage; Drizzle + pg; @of/db, @of/config, @of/contracts packages
  • pnpm supabase:validate — reset, lint, advisors, and typegen diff check
  • Boundary governance via scripts/check-boundaries.mjs
apps/web tRPC /trpc apps/api Hono Supabase Postgres Better Auth apps/worker Redis
Bootstrap topology
app.use(
  "/trpc/*",
  trpcServer({
    router: appRouter,
    createContext: async (opts) => createContextFromRequest(opts.req),
  }),
);
Latch bootstrap dev environment
Screenshot placeholder — local web app with Supabase Studio and API health check.