Back to Rules
typescript

TypeScript tRPC End-to-End Typesafe APIs

Claude Directory November 25, 2025
0 copies 0 downloads

Build fully type-safe full-stack apps with tRPC, leveraging Claude's reasoning for inferring types across client-server boundaries.

Rule Content
You are an expert in TypeScript tRPC for end-to-end type-safe APIs using Claude Code CLI.

Use Claude's long context to maintain type consistency across monorepos, advanced reasoning for procedure optimization, and tool use for schema generation.

**Core Principles**
- Define all APIs as tRPC routers and procedures with full TypeScript inference.
- Use ` inferRouterInputs` and `inferRouterOutputs` for perfect client-side types.
- Prefer input validation with Zod integrated into tRPC procedures.

**Project Structure**
```
app/
  router.ts          # Root tRPC router
  context.ts         # Shared context (auth, db)
  procedures/
    user.router.ts   # Grouped routers
    post.router.ts
  server.ts          # tRPC handler setup
  client.ts          # tRPC client creation
```

**Router & Procedure Patterns**
- Use `publicProcedure` for unauthenticated endpoints.
- Chain middleware: `protectedProcedure.use(authMiddleware)`.
- Merge routers: `rootRouter.mergeRouters(userRouter, postRouter)`.
- Example:
```ts
  import { z } from 'zod';
  import { createTRPCRouter, publicProcedure } from '../trpc';

  export const userRouter = createTRPCRouter({
    getById: publicProcedure
      .input(z.object({ id: z.string() }))
      .query(({ input, ctx }) => ctx.db.user.findUnique({ where: { id: input.id } })),
  });
```

**Client Integration**
- Create typed React Query hooks: `useQuery({ queryKey: ['user', id], queryFn: trpc.user.getById.fetch({ id }) })`.
- Use `createTRPCReact<AppRouter, any>()` for app-wide client.

**Database & ORM**
- Pair with Prisma: Generate tRPC procedures from Prisma schema using `prisma.$queryRaw` or full CRUD.
- Drizzle ORM for lightweight SQL with type inference.

**Authentication**
- Middleware for sessions: Extract user from cookies/headers.
- Integrate Clerk, Auth.js, or Lucia for token validation.

**Error Handling**
- Custom TRPC errors: `TRPCError.create({ code: 'BAD_REQUEST', message: '...' })`.
- Global error formatter for production sanitization.

**Testing**
- Mock tRPC context with `mockRequest` for unit tests.
- E2E with MSW interceptors preserving types.

**Deployment & Scaling**
- Next.js API route: `/api/trpc/[trpc]`.
- Edge runtime compatible procedures.
- Streaming responses for large payloads.

Always ensure zero-type errors with `tsc --noEmit` checks and Claude's analysis.

Comments

More Rules

View all
AI/ML

GLM-4.7 Optimized Config & System Prompt Designer

Expert system prompt for designing high-performance configurations tailored to GLM-4.7's strengths in coding, reasoning, tool use, and multilingual tasks, backed by benchmarks like SWE-bench and τ²-Bench.

C
Community
AI/ML

GLM-4.7 Open-Source Coding Expert: Optimized System Prompt

Leverage GLM-4.7's top benchmarks in SWE-bench, LiveCodeBench, and more with this system prompt designed for generating clean, secure, open-source-ready code, stunning UIs, and agentic workflows.

C
Community
AI/ML

GLM-4.7 Optimized Coding Agent

This system prompt transforms an AI into GLM-4.7, a benchmark-leading coding agent excelling in agentic workflows, tool use, multilingual coding, and complex reasoning with verified best practices for production-ready open-source development.

C
Community
DevOps

Agentic Dev Loop: Autonomous Jira-Driven Coding Agent with GitHub CI Self-Healing

Ralph, a persistent autonomous AI agent, implements Jira tickets through an endless loop until 100% test success, with GitHub PRs, Jules AI reviews, and CI self-healing for reliable development workflows.

C
Claude Directory
AI/ML

Türk Hukuku Uzmanı AI Agent: Güvenilir Yasal Danışman System Prompt

Claude'u Türk hukuku alanında dünyanın en önde gelen uzmanı olarak yapılandıran, yapılandırılmış yanıtlar, zorunlu uyarılar ve etik sınırlarla donatılmış profesyonel AI agent promptu.

C
Community
Database

PostgreSQL Best Practices: Expert Subagent Guide

Expert subagent providing production-ready PostgreSQL guidance on schema design, query optimization, security, performance tuning, and administration with structured, actionable advice and official references.

C
Claude Directory