Skip to content

trpc/examples-next-prisma-websockets-starter

Repository files navigation

Prisma + tRPC + WebSockets

Try demo http://websockets.trpc.io/

Features

  • ๐Ÿง™โ€โ™‚๏ธ E2E type safety with tRPC
  • โšก Full-stack React with Next.js
  • โšก WebSockets / Subscription support
  • โšก Database with Prisma
  • ๐Ÿ” Authorization using next-auth
  • โš™๏ธ VSCode extensions
  • ๐ŸŽจ ESLint + Prettier
  • ๐Ÿ’š CI setup using GitHub Actions:
    • โœ… E2E testing with Playwright
    • โœ… Linting

Setup

pnpm create next-app --example https://github.com/trpc/trpc --example-path examples/next-prisma-websockets-starter trpc-prisma-websockets-starter
cd trpc-prisma-websockets-starter
pnpm i
pnpm dx

Files of note

Path Description
./prisma/schema.prisma Prisma schema
./src/api/trpc/[trpc].tsx tRPC response handler
./src/server/routers Your app's different tRPC-routers

Commands

pnpm build      # runs `prisma generate` + `prisma migrate` + `next build`
pnpm db-nuke    # resets local db
pnpm dev        # starts next.js + WebSocket server
pnpm dx         # starts postgres db + runs migrations + seeds + starts next.js
pnpm test-dev   # runs e2e tests on dev
pnpm test-start # runs e2e tests on `next start` - build required before
pnpm test:unit  # runs normal Vitest unit tests
pnpm test:e2e   # runs e2e tests

Created by @alexdotjs.