Package Overview
The monorepo keeps shared runtime logic in packages/*. Each package has a narrow role and is meant to be consumed by apps such as apps/api.
Most readers should start with the higher-level guides first:
At a glance
Section titled “At a glance”packages/auth: Better Auth setup, plugin wiring, and unified OTP supportpackages/config: env schemas, allowed-origin helpers, and network runtime helperspackages/database: Drizzle ref tables, partition helpers, and base SQL scriptspackages/notification: HMAC notification client, auth header helpers, and provider-facing typespackages/match_score: HMAC match score client, provider-specific clients, and scoring request/response typespackages/schemas: Zod export, API schemas, and schema fetching
Checked-in example network configs, Postman collections, and API walkthroughs live under examples/.
How to read the package layout
Section titled “How to read the package layout”Start with packages/config if you are working on runtime setup or environment handling.
Start with packages/database if you are working on tables, partitioning, or item/event storage.
Start with packages/schemas if you are changing request validation, network config shape, or external schema loading.
Start with packages/auth if you are changing login, OTP, API key flows, or Better Auth integration.
Detailed guides
Section titled “Detailed guides”Use the dedicated pages for package-level usage patterns:
Config PackageDatabase PackageSchemas PackageAuth PackageNotification PackageMatch Score Package