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 relationslistSchema,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.