GraphQL for Beginners: Schema-first vs Code-first

Victoria Lo
4 min readAug 17, 2022

Let’s take a look at the 2 ways we can build a GraphQL API. How they are different and their pros and cons.

GraphQL has become a revolutionary scheme in the API world. As a solution to data fetching more efficiently, the first question you will need to ask yourself when building a GraphQL API is: schema-first or code-first?

In this article, let’s take a look at the 2 different approaches to implementing a GraphQL API and discuss when is best to use them.

This post is inspired by Dhruva Srinivas, who asked a question around this topic. Shoutout to him!

Note: If you need a refresher on GraphQL APIs, feel free to read my Introduction to GraphQL article.

There has been a lot of debate about which type of implementation is better. When GraphQL was first launched in 2016, only the schema-first approach exists. Therefore, developers who adopted GraphQL early might be more familiar with this approach.

The schema-first approach focuses on the designing and defining the GraphQL Schema first, then adding the resolver functions. From my GraphQL for Beginners article, recall that a schema is the blueprint of a GraphQL API.

--

--

Victoria Lo

A nerd in books, tea and programming. I publish weekly on my personal blog: https://lo-victoria.com/