Creating a Website with Gatsby

November 25th, 2019

This site was built with Gatsby, which describes itself as:

…a free and open source framework based on React that helps developers build blazing fast websites and apps

This is my first time building a site with this framework, so I wanted to write down some of my initial impressions. The “tldr” is: I’ve enjoyed it, and I’m exited to learn more about it and build more things!

First, why did I choose to try out Gatsby? I wanted to learn something new, and I wanted to build a website that was fast, and easy to extend, maintain, and deploy. Gatsby builds static files to serve, so that means any site built with it should be fast, and it’s simple to deploy. As for extend-ability and maintainability, I’ll have to wait and see how that goes, but it seems promising. I feel like I can do anything I want with it, which is always something that I look for in a framework or component or tool.

Since this is a blog, I could have just went with something like Wordpress, which I have used in the past. The issue I have with something like Wordpress is all the stuff that comes with it that I don’t want. As a bit of a minimalist, I prefer a project only have in it what is actually being used. It makes it easier to work on and reason about. I believe that unused files and code should be removed. If they are needed again, well, that’s why we have source control!

One thing I always look at first when accessing any open source project is how well it’s documented. No matter how great something is, if the documentation is bad then you’ll miss out on features you don’t know about, use things wrong, and just make mistakes. My initial impression of Gatsby was that it had great documentation. An example of it’s great documentation is the fact that they have a “quick start” guide for seasoned web devs, but still include tutorials that assume little prior knowledge and go through the effort of walking users through setting up node/npm and git etc. I think stuff like that is great for getting beginners onboard.

There’s a certain comfort in starting out using the documentation on a software project and seeing how much detail and common use cases are covered; especially when the initial steps of setting up a “Hello World” go so smoothly. I went through Gatsby tutorials and some of the docs that covered what I needed to do, and I already feel comfortable with it.

All that being said, it is worth noting that I came into this with years of React experience, which surely made things easier for me. I can also say that Gatsby has giving me a great intro to using GraphQL.

I’ve already used Gatsby to setup another site (https://eyehack.com), so I think I might already be hooked 😀

Matt Rapati

Written by Matt Rapati who lives and works in Toronto building apps, drawing comics and tweeting.