/trpc

πŸ§™β€β™€οΈ Move Fast and Break Nothing. End-to-end typesafe APIs made easy.

Primary LanguageTypeScriptMIT LicenseMIT

tRPC

End-to-end typesafe APIs made easy

codecov MIT License Discord Twitter

Demo

The client above is not importing any code from the server, only its type declarations.


Intro

tRPC allows you to easily build & consume fully typesafe APIs, without schemas or code generation.

Features

  • βœ…  Well-tested and production ready.
  • πŸ§™β€β™‚οΈ  Full static typesafety & autocompletion on the client, for inputs, outputs and errors.
  • 🐎  Snappy DX - No code generation, run-time bloat, or build pipeline.
  • πŸƒ  Light - tRPC has zero deps and a tiny client-side footprint.
  • 🐻  Easy to add to your existing brownfield project.
  • πŸ”‹  Batteries included - React.js/Next.js/Express.js/Fastify adapters. (But tRPC is not tied to React - reach out if you want to make a Svelte/Vue/... adapter)
  • πŸ₯ƒ  Subscriptions support.
  • ⚑️  Request batching - requests made at the same time can be automatically combined into one
  • πŸ‘€  Quite a few examples in the ./examples-folder

Quickstart

There are a few examples that you can use for playing out with tRPC or bootstrapping your new project. For example, if you want a next.js app, you can use the full-stack next.js example:

Quick start with a full-stack Next.js example:

# yarn
yarn create next-app --example https://github.com/trpc/trpc --example-path examples/next-prisma-starter trpc-prisma-starter
# npm
npx create-next-app --example https://github.com/trpc/trpc --example-path examples/next-prisma-starter trpc-prisma-starter

πŸ‘‰ See full documentation on tRPC.io. πŸ‘ˆ

Star History

tRPC is rapidly gaining momentum!

Star History Chart

Core Team


Alex / KATT
πŸ‘‹ Hi, I'm Alex and I am the creator of tRPC, don't hesitate to contact me on Twitter or email if you are curious about tRPC in any way.

Level 2 Maintainers

Volunteers who actively help out improving the codebase by making PRs and reviewing code


Sachin Raja

James Berry

Level 1 Maintainers

Volunteers that actively help out answering questions in Discord, GitHub Discussions, etc

n/a - do you want to contribute? Feel free to write to us on Discord.

Sponsors

If you enjoy working with tRPC and want to support me consider giving a token appreciation by GitHub Sponsors!

Also, if your company using tRPC and want to support long-term maintenance of tRPC, have a look at the sponsorship tiers or get in touch to discuss potential partnerships.

πŸ₯‡ Gold Sponsors


Render

Cal.com, Inc.

Peer Richelsen

πŸ₯ˆ Silver Sponsors


Jason Docton

Ping Labs

πŸ₯‰ Bronze Sponsors


Newfront

Dr. B

Ryan Edge

Snaplet

Flylance

😻 Individuals


Anthony Short

Hampus Kraft

Daniel Yogel

Sam Holmes

Jan Zimmek

Theo Browne

Max Greenwald

Alex Schumacher

Bill

Ryan Edge

Illarion Koperski

Albin Groen

Timothy Cole

MichaΕ‚ Kowieski

SchlagerKhan

Ethan Clark

nihinihi01

Lucas Viana

Faraz Patankar

okaforcj

Ivan Buncic

JΓΆkull SΓ³lberg AuΓ°unsson

Luis Matheus

Dmitry Maykov

Omar LΓ³pez

Mateo CarriquΓ­

Ahmed Elsakaan

All contributors ✨

tRPC is developed by KATT, originally based on a proof-of-concept by colinhacks.


Alex Johansson

πŸ€” πŸ’» ⚠️ πŸ“– πŸ’‘ 🚧

Colin McDonnell

πŸ€” πŸ’» ⚠️ πŸ“–

Pieter Venter

πŸ€” πŸ‘€

Kalle

πŸ›

Malte Granderath

πŸ›

KristΓ³f PoduszlΓ³

πŸ€” πŸ›

Rich Haines

πŸ’‘

Simon Edelmann

πŸ’» πŸ€” ⚠️ πŸ“– πŸ‘€

Anthony Short

πŸ’΅

Hampus Kraft

πŸ’΅

hypnodron

⚠️ πŸ’» πŸ›

Daniel Yogel

πŸ’΅ πŸ‘€ πŸ›

Sam Holmes

πŸ’΅

Misha Kaletsky

πŸ€” ⚠️ πŸ’» πŸ‘€

s

πŸ“–

Jan Zimmek

πŸ’΅

Alaister Young

πŸ’» ⚠️

Theo Browne

πŸ‘€ πŸ’΅ πŸ“Ή πŸ“’ βœ…

Max Greenwald

πŸ’΅ πŸ’» πŸ“– ⚠️ πŸ›

Stephen Mount

πŸ’΅

amr

πŸ’»

Thomas Coldwell

πŸ“–

Alex Schumacher

πŸ’΅

Ifiok Jr.

⚠️ πŸ’» πŸ“–

Memory-Lane-Games

πŸ’΅

Bill

πŸ’΅

Keenahn Tiberius Jung

πŸ’»

Daniel Roe

πŸ’»

Sachin Raja

πŸ‘€ πŸ€” πŸ§‘β€πŸ«

Michael Kreuzmayr

πŸ’»

Kim RΓΈen

πŸ€”

Ryan

πŸ’΅

Snaplet

πŸ’΅

Dylan Brookes

πŸ’‘

Marc Guiselin

πŸ“– πŸ‘€

Illarion Koperski

πŸ’΅

Albin Groen

πŸ’΅

Esa-Matti Suuronen

πŸ’‘

Timothy Cole

πŸ’΅ πŸ§‘β€πŸ«

reggie3-braingu

πŸ’‘ ⚠️ πŸ’΅

ShiftySlothe

πŸ’‘

Dario Ielardi

πŸ’» ⚠️

MichaΕ‚ Kowieski

πŸ’΅

Theodore Rose

πŸ’‘

Ionut-Cristian Florescu

πŸ’‘

skarab42

πŸ“– πŸ’» πŸ’‘ ⚠️

SchlagerKhan

πŸ’΅

Brock Herion

πŸ’» ⚠️ πŸ“–

Render

πŸ’΅

Ethan Clark

πŸ’΅

nihinihi01

πŸ’΅

CommanderRoot

πŸ’»

Jason Docton

πŸ’΅

Ping Labs

πŸ’΅

Emil Bryggare

πŸ’‘ ⚠️

ahhshm

πŸ“– πŸ’‘

James Berry

πŸ› πŸ€” πŸ’» ⚠️

Jared Wyce

πŸ’΅

Lucas Viana

πŸ’΅

Kevin Langley Jr.

πŸ“–

toyamarinyon

πŸ’‘ πŸ’»

Faraz Patankar

πŸ’΅

John Schmitz

πŸ’»

okaforcj

πŸ’΅

Louis Haftmann

πŸ’» ⚠️ πŸ“–

Perfect7M

πŸ’»

Tijl Van den Brugghen

πŸ“–

Matthijs Wolting

πŸ›

Luka Hartwig

πŸ’» 🚧

Flylance

πŸ’΅

VFLC

πŸ“–

Robert Soriano

πŸ’‘ πŸ”§

Luke Vella

πŸ’‘ πŸ”§

JoΓ£o Adriano

πŸ›

Nils Kjellman

πŸ“–

Alexey Immoreev

πŸ’»

Braden Napier

πŸ’» ⚠️

bautistaaa

πŸ“– πŸ’‘

Balint Orosz

πŸ“–

Kenneth Skovhus

πŸ“– πŸ’»

Erik Lilja

πŸ“– πŸ’» ⚠️

Ivan Buncic

πŸ’΅

JΓΆkull SΓ³lberg AuΓ°unsson

πŸ’΅

futpib

πŸ›

Luis Matheus

πŸ’΅

Franklin

πŸ“–

Omar LΓ³pez

πŸ’΅

Diego Massarini

πŸ’΅

Dmitry Maykov

πŸ’΅

Riccardo Giorato

πŸ’΅

Carl Barrdahl

πŸ’΅

Peer Richelsen

πŸ’΅

Cal.com, Inc.

πŸ’΅

Tom

πŸ“Ή πŸ“’ βœ…

Victor Homic

πŸ’» ⚠️

Ahmed Elsakaan

πŸ“– πŸ’΅

EnderSpirit

πŸ“–

Julius Marminge

πŸ’‘ πŸ“–

Mateo CarriquΓ­

πŸ’΅

Oleg Gulevskyy

πŸ“–

JoΓ£o Samouco

⚠️

Powered by Vercel