I want to compare the Point0 framework with the tRPC library. I am doing it because queries and mutations in Point0 feel a lot like tRPC, and are more convenient in the places where being a framework rather than a library actually buys something:
- Declaring a query together with its server code right inside a client file, or the other way round
- Hydrating and dehydrating the query client automatically once SSR is on
- Sending files from mutations, turning the data into FormData and back on its own
- Giving every query and mutation its own stable URL
- Not making the editor crawl as the number of endpoints grows
- Answering a request with whole server components or interactive islands
- Controlling what loading states look like, on pages and inside components
Point0 does plenty beyond what this article covers, but that belongs in other articles. Here the focus is the comparison with tRPC. I assume you know tRPC at least roughly, but I still show the tRPC implementation of everything, so the comparison is visible rather than claimed.