trpc

Solid

tRPC end-to-end type safety, procedures, routers, middleware, and React integration.

AI & Automation 814 stars 53 forks Updated today MIT

Install

View on GitHub

Quality Score: 95/100

Stars 20%
97
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# tRPC Skill Expert assistance for building type-safe APIs with tRPC. ## Capabilities - Create type-safe procedures and routers - Implement middleware for auth/validation - Set up tRPC with Next.js/React - Handle subscriptions - Configure error handling - Build type-safe client hooks ## Usage Invoke this skill when you need to: - Build end-to-end type-safe APIs - Integrate with React/Next.js - Replace REST with type-safe RPC - Implement real-time features ## Patterns ### Router Definition ```typescript // server/trpc/routers/user.ts import { z } from 'zod'; import { router, publicProcedure, protectedProcedure } from '../trpc'; import { TRPCError } from '@trpc/server'; export const userRouter = router({ list: protectedProcedure .input(z.object({ page: z.number().min(1).default(1), limit: z.number().min(1).max(100).default(10), search: z.string().optional(), })) .query(async ({ ctx, input }) => { const users = await ctx.prisma.user.findMany({ where: input.search ? { name: { contains: input.search } } : undefined, skip: (input.page - 1) * input.limit, take: input.limit, }); return users; }), byId: protectedProcedure .input(z.string()) .query(async ({ ctx, input }) => { const user = await ctx.prisma.user.findUnique({ where: { id: input }, }); if (!user) { throw new TRPCError({ code: 'NOT_FOUND' }); } return user; }...

Details

Author
a5c-ai
Repository
a5c-ai/babysitter
Created
4 months ago
Last Updated
today
Language
JavaScript
License
MIT

Integrates with

Related Skills