About the Website | Zach Levy

About the Website

About the Website

I created this site to share some of my projects and cakes and to learn about web development. I wanted to go through the process of creating a website from scratch, purchasing a domain, and hosting it on a cloud service so that I could gain a better understanding of how the internet works.

When I created the first version of this site, it was my first major web development project. This original version of the site was a static website which was chosen for simplicity and to keep the hosting costs low. It was written in pure HTML, CSS, and Javascript with no frameworks. I started learning these languages in late 2021, and I began developing the site in Feburary 2022. The first version of the site launched in May 2022 and was hosted on Github Pages.

I purchased the custom domain for the site from Cloudflare, and I then migrated to Cloudflare Pages for hosting in order to consolidate the services I was using.

For the second version of the site, I decided to rewrite it using Gatsby beacuase it was designed for static sites and because I wanted to explore Javascript frameworks.

While it did take a significant effort to learn to use Gatsby, particularly because I had limited prior Javascript experience, I found that it enabled a significant increase in the quality of the site and in the ease of development. The React components eliminated the excessive copy-pasting of entire sections of HTML code, and made it possible to make changes without having to replicate them in every single document.

One set of features I used to great effect was the data layer and integration with GraphQL. At first, It seemed like these tools only increased the complexity of development, specifically with regards to images. However, they allowed me to generate the articles from markdown documents and the cakes and descriptions from a JSON file instead of needing to hard code them in HTML like in the previous versions of the site. This should make maintenance much easier in the future because these formats are standardized, and I am unlikely to remember the specifics of how I implemented and formatted each page and section when I shift my focus away from developing this site and towards other projects.