<head>
  <link rel="canonical" href="https://trpc.io/docs/love" />
</head>

Do you love or hate tRPC? Feel free to ping [@alexdotjs on Twitter](https://twitter.com/alexdotjs)

## From Twitter

> For more testimonials, see this Twitter collection: https://twitter.com/alexdotjs/timelines/1441435105910796291

<blockquote className="twitter-tweet">
  <p lang="en" dir="ltr">
    Tried out trpc for the first time yesterday. The fact that you get type
    safety WITHOUT codegen is extremely compelling. It makes the feedback loop
    very very fast.
    <br />
    <br />
    Sort of wishing I had used this instead of graphql for my last project.
    <a href="https://t.co/xPPIJ5Zqa3">https://t.co/xPPIJ5Zqa3</a>
  </p>
  &mdash; Matt Pocock (@mattpocockuk){' '}
  <a href="https://twitter.com/mattpocockuk/status/1537761528962764802?ref_src=twsrc%5Etfw">
    June 17, 2022
  </a>
</blockquote> <script
  async
  src="https://platform.twitter.com/widgets.js"
  charset="utf-8"
></script>

<blockquote className="twitter-tweet">
  <p lang="en" dir="ltr">
    That being said, we _are_ starting a production project right now, and
    we&#39;re using{' '}
    <a href="https://twitter.com/nextjs?ref_src=twsrc%5Etfw">@nextjs</a> with{' '}
    <a href="https://twitter.com/trpcio?ref_src=twsrc%5Etfw">@trpcio</a> .
    It&#39;s so good I don&#39;t even know where to start 🔥. Probably with the
    e2e type-safety 😍
    <br />
    Haven&#39;t thought about client state much but the former probably applies.
  </p>
  &mdash; Dominik 🇺🇦 (@TkDodo)
  <a href="https://twitter.com/TkDodo/status/1573391189373751297?ref_src=twsrc%5Etfw">
    September 23, 2022
  </a>
</blockquote> <script
  async
  src="https://platform.twitter.com/widgets.js"
  charset="utf-8"
></script>

<blockquote className="twitter-tweet">
  <p lang="en" dir="ltr">
    The amount that tRPC has improved the quality of our code, the speed of our
    delivery, and the happiness of our devs is hard to comprehend.
    <br />
    <br />I know I shill it a lot but seriously, please try{' '}
    <a href="https://twitter.com/trpcio?ref_src=twsrc%5Etfw">@trpcio</a>
  </p>
  &mdash; Theo - t3.gg (@t3dotgg){' '}
  <a href="https://twitter.com/t3dotgg/status/1571922456239284224?ref_src=twsrc%5Etfw">
    September 19, 2022
  </a>
</blockquote> <script
  async
  src="https://platform.twitter.com/widgets.js"
  charset="utf-8"
></script>

<blockquote className="twitter-tweet">
  <p lang="en" dir="ltr">
    I&#39;ve used{' '}
    <a href="https://twitter.com/trpcio?ref_src=twsrc%5Etfw">@trpcio</a> for
    exactly 5 seconds, and I can already tell - it is the _best_ way to consume
    first-party APIs with React Query. <br />
    <br />
    Why? The &quot;t&quot; - TypeScript means you get end-to-end type safety
    PLUS auto-complete for your query keys everywhere, like `invalidateQueries`.
  </p>
  &mdash; R. Alex Anderson 🚀 (@ralex1993)
  <a href="https://twitter.com/ralex1993/status/1556619478556876802?ref_src=twsrc%5Etfw">
    August 8, 2022
  </a>
</blockquote> <script
  async
  src="https://platform.twitter.com/widgets.js"
  charset="utf-8"
></script>

<blockquote className="twitter-tweet">
  <p lang="en" dir="ltr">
    tRPC - Safe API between your client and server 🔥
    <br />
    <br />I *LOVE* this project!
    <br />
    <br />
    If you&#39;re building your client and server with TypeScript, tRPC allows
    you to have static verification of your communication protocol with *zero*
    overhead on the client.
    <a href="https://t.co/qsyjD9et3R">https://t.co/qsyjD9et3R</a>
  </p>
  &mdash; Minko Gechev (@mgechev)
  <a href="https://twitter.com/mgechev/status/1549140656752234496?ref_src=twsrc%5Etfw">
    July 18, 2022
  </a>
</blockquote> <script
  async
  src="https://platform.twitter.com/widgets.js"
  charset="utf-8"
></script>

<blockquote className="twitter-tweet">
  <p lang="en" dir="ltr">
    tRPC is super cool. Mucho magic there and good magic at that.
  </p>
  &mdash; Tanner Linsley (@tannerlinsley)
  <a href="https://twitter.com/tannerlinsley/status/1507753424187650048?ref_src=twsrc%5Etfw">
    March 26, 2022
  </a>
</blockquote> <script
  async
  src="https://platform.twitter.com/widgets.js"
  charset="utf-8"
></script>{' '}

<blockquote className="twitter-tweet" data-cards="hidden">
  <p lang="en" dir="ltr">
    Hah, we just did our first endpoint, returned some mock data from a resolver
    and got instant autocomplete in the client. Everyone&#39;s heads went 🤯🥳
  </p>
  &mdash; Marcus Rådell 🦀 (@marcusradell)
  <a href="https://twitter.com/marcusradell/status/1402991694446952458?ref_src=twsrc%5Etfw">
    June 10, 2021
  </a>
</blockquote>

<blockquote className="twitter-tweet">
  <p lang="en" dir="ltr">
    for my money, Zod +{' '}
    <a href="https://twitter.com/HookForm?ref_src=twsrc%5Etfw">@HookForm</a> +
    tRPC has been the best stack for building typesafe forms for nearly three
    years now <br />
    <br />
    what are the other challengers?{' '}
    <a href="https://t.co/qFxfjzg0fa">https://t.co/qFxfjzg0fa</a>
  </p>
  &mdash; Colin McDonnell (@colinhacks)
  <a href="https://twitter.com/colinhacks/status/1629950516242313216?ref_src=twsrc%5Etfw">
    February 26, 2023
  </a>
</blockquote> <script
  async
  src="https://platform.twitter.com/widgets.js"
  charset="utf-8"
></script>

## From GitHub

<blockquote className="github-comment">
  <p lang="en" dir="ltr">
    We built a nextjs website with trpc and it has worked wonderful 🙌{' '}
    <em>[...]</em>
  </p>
  &mdash; cNille{' '}
  <a href="https://github.com/trpc/trpc/issues/775#issue-966343527">
    Aug 11, 2021
  </a>
</blockquote>

<blockquote className="github-comment">
  <p lang="en" dir="ltr">
    Hi - have just started using trpc and it is 👌 <em>[...]</em>
  </p>
  &mdash; mmkal
  <a href="https://github.com/trpc/trpc/issues/703#issue-950972268">
    July 22, 2021
  </a>
</blockquote>

<blockquote className="github-comment">
  <p lang="en" dir="ltr">
    Hey @KATT - love the approach you have taken with this. Proper type sharing
    in Next.js projects is something I have been trying to achieve for a while
    and your solution here ticks all the boxes. <em>[...]</em>
  </p>
  &mdash; dangreaves
  <a href="https://github.com/trpc/trpc/discussions/455#discussion-3392848">
    June 2, 2021
  </a>
</blockquote>

<blockquote className="github-comment">
  <p lang="en" dir="ltr">
    First of all I want to say thank you very much for making this library! I
    was already looking for a library like this for quite some time.{' '}
    <em>[...]</em>
  </p>
  &mdash; simonedelmann
  <a href="https://github.com/trpc/trpc/issues/378#issue-893740950">
    May 17, 2021
  </a>
</blockquote>

<blockquote className="github-comment">
  <p lang="en" dir="ltr">
    Hi there, thanks for this library! I'm checking it out and appreciate how it
    feels like a much more lightweight approach to my typical
    Prisma-Nexus-Apollo-GQL Codegen stack. <em>[...]</em>
  </p>
  &mdash; lostfictions
  <a href="https://github.com/trpc/trpc/pull/712#issue-696293837">
    June 24, 2021
  </a>
</blockquote>

<blockquote className="github-comment">
  <p lang="en" dir="ltr">
    Thank you for the quick fix and the amazing project 💯
  </p>
  &mdash; mgranderath
  <a href="https://github.com/trpc/trpc/issues/331#issuecomment-831263018">
    May 3, 2021
  </a>
</blockquote>
