Well Hello There.
July 12, 2019
Welcome to my blog! I built this baby using Gatsby, MaterialUI, and NetlifyCMS.

NetlifyCMS was at the core of the tooling here, as I'm currently building out a website for a little student club I'm a part of, and we wanted something that would be relatively simple to build, offer customization, and make it easy for someone without any technical knowledge at all to upload new content. Wordpress is the incumbent in this area, but when I found out about headless content management systems the idea of decoupling the data from the view made a lot of sense to me.
There are a lot of services out there that will provide that decoupled back-end with access to your content via API calls, and while their free tiers are quite generous I like having as much control as possible over my workflow. Should the chosen service suddenly go under or have a change of heart, we could find ourselves needing to migrate or, in a worst-case-scenario, lose all of our data entirely.
What I liked about NetlifyCMS was that it saves every post as a Markdown file in your local repo, which still decouples the front-end from the back-end (the Markdown files aren't concerned with what serves them) while keeping the application and its data together as a package.
For the front end, I initially tried Nuxt and then Vuepress as I have more experience in Vue.js than React but got stuck on a buggy async call that I couldn't figure out, so I looked into Gatsby and was greeted by some of the friendliest documentation I've ever come across. In fact Gatsby and NetlifyCMS both offer tutorials on how to set up a blog using one another, making things relatively straightforward. Of course there were some snags in the process but fortunately nothing that StackOverflow couldn't assist with.
It was also cool dipping my toes into GraphQL, which Gatsby uses as a way to query data to inject into the components you create. I didn't get involved in setting up a schema or anything, but using graphiql to traverse the site's data and construct queries was pretty neat.
I used Material UI, which is a design framework built for React, to help structure the design of this site. I've really enjoyed working with Vuetify - a good component design library makes prototyping really fast - and while Material UI's API took some getting used to (the differences between React and Vue likely deserve their own post) once I wrapped my head around things it was a pleasure to work with.
I'm pretty pleased with how things turned out - mostly I just love making things. I'll likely continue making tweaks here and there but I have a few other things to focus on now. If you do see anything buggy here though please send me a line.