tRPC: Building type-safe APIs with TypeScript

tRPC: Building Type-Safe APIs with TypeScript

Jake Everhart API Development, Articles, Development Technologies & Tools, GraphQL, JavaScript, TypeScript Leave a Comment

Over the years, we’ve seen many approaches to HTTP API design. While REST APIs are still very popular throughout the industry, they offer no inherent guarantees that the client’s assumptions about the response structures will be valid.

GraphQL fills this gap to an extent by allowing client-side code greater control over the resulting structures but at the cost of added complexity. RPC (remote procedure call) frameworks attempt a different solution by sharing generated type definitions between the client and server implementations. What if there was a way to achieve the type safety of RPC by simply inferring the type definitions from the server’s code?

Enter tRPC. Since JavaScript (and specifically TypeScript) can already span across client and server implementations, tRPC allows a client to directly consume structures defined by the server’s exposed procedures. Essentially, you import your dependencies from the server to access these procedures, their return types are inferred and checked at build time, and your client code can confidently consume the returned data.

In this post, we’ll look at how it achieves these goals and what limitations it places on your project stack.

Part 3: Creating an FHIR API – Implementation Part B

Zach Gardner API Development, Articles, Cloud, Creating an FHIR API, Tutorial Leave a Comment

This is Part 3 of our series on creating an FHIR API using Google Cloud’s offering. In the last installment, we began implementing an FHIR using GCP. We covered creating both the BigQuery resources and your FHIR repository resources. if you missed Part 1 and Part 2, be sure you go back to read those – they’re critical to understanding!

This time, we’re continuing the implementation. I’ll explain the authentication methods, and we’ll also tackle populating data in our FHIR repository.

New Development: .NET with Docker Containerization

Shaylee Webb .NET, DevOps, New Development

Client Snapshot: The client is a data-driven company specializing in call-center success. With over 20 years of experience in the IT Ops industry, they offer proven solutions for call-center agent productivity. Project Overview A single Keyhole consultant worked as the sole developer on the project building a .NET application from the ground up. The goal of this project was to …

Microservices in the Wild: Three Types & How to Implement

Dallas Monson Architecture, Articles, Cloud, Development Technologies & Tools, Microservices 1 Comment

Microservices has become a catch-all term in the industry used to describe anything from architecture patterns to actual service implementations.

With such a broad spectrum, it can be daunting to know what it is, what it isn’t, and maybe more importantly, why we should care.

In this post, I’ll provide an overview of three kinds of Microservices that I have observed in client architectures: Domain, Integration, and Unit-of-Work. I’ll also discuss specific examples of their purposes and a method to implement each one.

.NET Consulting

Keyhole Software delivers quality, full-stack .NET solutions. As a Gold Microsoft Partner with proven expertise in C#, .NET Framework, .NET Core, and others, we use the right tool for each unique project.