GatsbyJS is a static site generator, meaning that each page will have its own .html file generated from your application routes. This strategy makes your site very easy for search engines to crawl and extremely fast. There are many static site generators out there, but, Gatsby does things a little differently.
Gatsby allows you to use the incredibly powerful React and GraphQL libraries in your code and it will magically generate a static site from your components. This is the main reason we chose GatsbyJS over Hugo -- once you go React, you never go back.
The power of GraphQL comes into play when you need to mess with data. For example, this blog post is simply a Markdown file retreived from the file system using a GraphQL query! Cool, right?
Well, it's not good at what it wasn't built for. It shouldn't be used for giant SPA applications nor should it be used to clean your kitchen sink. What it is good at, however, it does very well and we couldn't have been happier with our choice.