One of the nice things with GraphQL for API design is that it enforces type-safety in the schema that we define. But alas, these types are embedded as part of our schema and that type safety is lost for our resolvers, resolver variables, consuming clients and so on, requiring us to recreate the type system. It’d be so much easier if we could leverage our schema type system in our application.
This sounds like a job for type generation, but how do we do that? We’ll take a look at a tool that can generate you TypeScript type definitions, then implement our backend using them before looking at how they can plug into the front end with React (or Angular or Vue or Svelte or whatever is the framework of the month!).
We’ll cap off by learning how to model our storage platform effectively, using a separate type system for storage and combine them with the GraphQL schema types, producing a rich, strongly types, end-to-end development model.
Speakers:
Christopher Harrison, Senior Cloud Advocate, Microsoft
Christopher is a longtime web dev who turned a coding hobby into a career. Currently a Senior Cloud Advocate at Microsoft, he never lost the joy he felt in writing code and having the computer do what he asked and sharing that passion with others. These days he can be found at a keyboard writing TypeScript and Python. When not at a keyboard he can be found running long distances or relaxing with his wife and their four-legged child (an adorable dog) in Seattle.
Aaron Powell, Principal Cloud Developer Advocate, Microsoft
Aaron is a Developer Advocate at Microsoft. Having spent 15 years doing web development he’s seen it all, from browser wars, the rise of AJAX and the fall of 20 JavaScript frameworks (and that was just yesterday!). Always tinkering with something new he explores crazy ideas like writing your own implementation of numbers in .NET, creating IoC in JavaScript or implementing tic-tac-toe using git commits. When not sitting at a computer he can be found running while pushing his two kids in a pram.