Fullstack GraphQL: Complete Guide to Building Servers and Clients in GraphQL
This is the working professional’s guide to GraphQL which means we wrote it for programmers who actually have to implement GraphQL at work.
I’m sure you’ve read tons of shallow Medium posts talking about how great GraphQL is but building a snappy GraphQL stack has real-world engineering challenges.
GraphQL is a joy to use - if you set it up correctly.
But these real-world challenges aren’t discussed in enough detail in blog posts. It’s really hard to find all of the information you need to build fast, type-safe, APIs with GraphQL in real-world situations.
With Fullstack GraphQL we’ve assembled a book that shows you how to both:
- build front-end web apps and
- build back-end servers
using production-ready GraphQL tooling.
GraphQL is both a query language and tooling that can be used with any programming language.
In this book we focus on Node.js, TypeScript, React.js, Apollo Client, Apollo server, and TypeORM.
Build for Beginner-to-Expert
If you’re a complete beginner to GraphQL, you’ll find an introduction to the absolute basics of GraphQL schemas and making queries.
And if you’re a seasoned developer, you’ll find instructions on how to do the non-obvious things required for production-level performance like:
- Prefetching queries
- Per-object and Per-field authentication and authorization
- Generating TypeScript types from your GraphQL types (and what the difference is)
- Creating custom GraphQL “directives”
We also cover optimizations like:
- Making optimistic updates after mutations
- Estimating the cost of queries
- Understanding Apollo caching
- Using Dataloader to solve the dreaded n+1 problem
… and a ton more.
This is a real-world book written by folks who have used GraphQL in production settings: Roy Derks, Gaetano Checinski, and myself, Nate Murray.
Roy and Gaetano have been implementing and teaching GraphQL for years they’ve condensed their experience into this book - which will save you months of time figuring it out on your own.
The Book is Structured for Fullstack Engineers
The structure of this book is loosely inspired by the workflow of a Fullstack Engineer and we reveal GraphQL-specific concepts through the life-cycle of a real-world app.
In the first part of the book, we talk about GraphQL Clients in a variety of settings: how to setup a “hello-world” application with Node, in the browser, and in a React app with Apollo.
We then dive into building a bigger React app where we generate TypeScript types from our GraphQL queries. Then we talk about real-world performance issues, strategies for fetching data, and ways to make changes with mutations (that results in super-fast end-user performance).
In the second part of the book, we talk about GraphQL Servers. GraphQL clients are an absolute joy to use – but only because the “pain” was dealt with by a backend engineer to build the server. GraphQL Servers are the hard part of GraphQL! But after reading these chapters you’ll make it look easy.
We talk about a ton of details that aren’t usually covered together like: how to manage authentication to protect fields, how to deal with batching queries and use dataloader, how to connect TypeORM to auto-generate a GraphQL server, how to calculate query costs for performance considerations a ton more.
What’s Inside
By buying now, you’ll get:
Instant access to the 10 chapters in the book
Access to all of the code for the app.
It walks through practical examples on how to use GraphQL in a ton of different scenarios, from Node.js to React applications to plain JavaScript.
If you’re looking to really learn GraphQL for work, then grab a copy of Fullstack GraphQL now.
There are two ways to buy:
Fullstack GraphQL by itself on Gumroad (one-time purchase)
If you become a newline Pro member you’ll receive access to Fullstack GraphQL and every other book in the newline library.