Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/trpc/examples-next-prisma-starter

🚀 tRPC starter repo with E2E-testing
https://github.com/trpc/examples-next-prisma-starter

nextjs starter trpc typescript

Last synced: about 1 month ago
JSON representation

🚀 tRPC starter repo with E2E-testing

Lists

README

        

# Prisma + tRPC

## Features

- 🧙‍♂️ E2E typesafety with [tRPC](https://trpc.io)
- ⚡ Full-stack React with Next.js
- ⚡ Database with Prisma
- ⚙️ VSCode extensions
- 🎨 ESLint + Prettier
- 💚 CI setup using GitHub Actions:
- ✅ E2E testing with [Playwright](https://playwright.dev/)
- ✅ Linting
- 🔐 Validates your env vars on build and start

## Setup

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

### Requirements

- Node >= 18.0.0
- Postgres

## Development

### Start project

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

### Commands

```bash
pnpm build # runs `prisma generate` + `prisma migrate` + `next build`
pnpm db-reset # resets local db
pnpm dev # starts next.js
pnpm dx # starts postgres db + runs migrations + seeds + starts next.js
pnpm test-dev # runs e2e tests on dev
pnpm test-start # runs e2e + unit tests
pnpm test-unit # runs normal Vitest unit tests
pnpm test-e2e # runs e2e tests
```

## Deployment

### Using [Render](https://render.com/)

The project contains a [`render.yaml`](./render.yaml) [_"Blueprint"_](https://render.com/docs/blueprint-spec) which makes the project easily deployable on [Render](https://render.com/).

Go to [dashboard.render.com/blueprints](https://dashboard.render.com/blueprints) and connect to this Blueprint and see how the app and database automatically gets deployed.

## Files of note



Path
Description




./prisma/schema.prisma
Prisma schema


./src/pages/api/trpc/[trpc].ts
tRPC response handler


./src/server/routers
Your app's different tRPC-routers

---

Created by [@alexdotjs](https://twitter.com/alexdotjs).