# Type Safety Chain

> Implements or verifies the six-layer type safety chain from Drizzle schema through Zod, services, API routes, and React hooks, including regeneration after DB changes and bootstrapping in new folders.

- Skill: `joshuashepherd/type-safety-chain` (Agent Skill)
- Install (CLI): `npx skillmds add joshuashepherd/type-safety-chain`
- Raw SKILL.md: https://api.skillmd.com/api/skills/joshuashepherd/type-safety-chain/raw
- Safety review: PASS (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools, API Design
- Tags: Api Routes, Drizzle, React, Schema, Supabase, Typescript, Zod
- Author: JoshuaShepherd (https://skillmd.com/u/joshuashepherd)
- Updated: 2026-08-22
- Page: https://skillmd.com/skills/joshuashepherd/type-safety-chain

---


# Type safety chain (Cursor)

## Canonical source

All phases, SQL for Supabase MCP verification, generator script behavior, and layer rules are in **`.claude/skills/type-safety-chain/SKILL.md`**. Open and follow that file for any non-trivial chain work.

## Quick reference

| Layer | Location |
|-------|-----------|
| 1 DB schema | `src/lib/database/schema.ts` |
| 2 Zod | `src/lib/schemas/` |
| 3 Services | `src/lib/services/simplified/` |
| 4 Routes | `src/app/api/simplified/` |
| 5 Hooks | `src/hooks/simplified/` |
| 6 UI | `src/components/simplified/` (optional; `pnpm validate:all:with-ui`) |

Run `pnpm validate:all` after regenerating (layers 1–5). Use **`pnpm validate:all:with-ui`** when Layer 6 exists. Docs: **`_docs/_build/architecture/type-safety-chain.md`**, **`_docs/_build/type/README.md`**. Error-check workflow: **`.cursor/skills/validate/SKILL.md`**.

If Supabase MCP is available, use it to compare live tables to `schema.ts` as described in the Claude skill.

**Multi-tenant:** After schema or seed changes, confirm `organization_id` columns and tenant-scoped data per org. Canonical rules: **`.cursor/rules/multi-tenancy.mdc`** and the **Multi-tenancy** section in **`.claude/skills/type-safety-chain/SKILL.md`**.

