Articles

  1. Incorporating Data from REST APIs with Apollo Data Sources

    When GraphQL was first released, some touted it as a replacement to REST. "REST is dead!" early adopters cried, and then encouraged us all to throw a shovel in the trunk and drive our unsuspecting REST APIs out to the woods. This was great for getting clicks on blogs and starting conversations at conferences, but painting GraphQL as a REST killer is an oversimplification. In fact, wrapping an existing REST API is a very effective way of migrating from REST to GraphQL.

    Read more
  2. Understanding Fragments in GraphQL

    The "QL" in GraphQL stands for the query language, and a key, yet often overlooked feature of the language is GraphQL fragments. A GraphQL query document can contain definitions for operations and fragments. Fragments are selection sets that can be reused in multiple operations.

    Read more
  3. Getting Familiar with useEffect: Part One

    Rendering is the heartbeat of a React application. When something changes (props, state), the component tree re-renders, reflecting that change in the user interface. But what happens when we need to do something after a render? As you might imagine, there's a Hook for that.

    Read more
  4. Using Netlify Dev with Apollo Server Lambda: An Appreciation

    A little over a year ago, we needed to publish the GraphQL Workshop website and decided to use Netlify for hosting. Before we could deploy the site, I needed to set up the security certificate to enable HTTPS. Pre-Netlify, this used to take forever, so I carved out some time on the calendar. I then promptly found a one-click option to secure the site with HTTPS, and the whole thing was done automatically in around 37 seconds. Oh, and it was free.

    Read more
  5. Getting Started with Node.js

    It has been 8 years since we made the decision to build everything using JavaScript and Node.js. It was a good decision. It has been a lot of fun watching JavaScript, Node, and React explode in popularity. There are great opportunities out there for JavaScript professionals these days, and it is our mission to provide the training tools necessary to succeed in these positions.

    Read more