Surplus logo
Surplus Docsby Sharing Excess
GuidesDevelopersShared packages

@surplus/types

packages/types holds Zod schemas for domain entities and API payloads. Patterns (see docs/conventions.md):

  • baseSchema — full column set without relations
  • listSchema, insertSchema, updateSchema, fullSchema — composed with .pick(), .omit(), .partial(), .extend() to avoid duplication

The client uses these schemas for forms and validation; the server reuses them for input checking alongside Drizzle constraints in packages/postgres.

On this page