The Nuxt 3 logo

Personal Website

May 2023 - current

While I was at CC Data, a baffling thought struck me: What really happens when we enter a website's address into our browser? Astonishingly, I didn't have a clear answer, even though I was part of a tech firm with a primary product accessed via a website.

This sparked a curiosity in me. I wanted to delve deeper into the intricate workings of the internet and truly grasp the mechanics of websites. My goal was twofold: to host my own website, thereby enhancing my understanding of the process, and to comprehend the challenges and priorities of web developers.

I envisioned my website (this website!) as an interactive CV, doubling as a platform for other projects. My aim was to gain at least foundational knowledge across the entire web stack.

My choice for this endeavor was Nuxt.js. This framework facilitates building Vue.js applications seamlessly. One of its standout features is its unique universal rendering system, which I believed would be resilient over time. Moreover, its ease in page creation appealed to me, especially since my previous experience with Django felt somewhat cumbersome. However, one minor hiccup I encountered with Nuxt.js was its limited plugin support, perhaps owing to its multi-layered framework nature.

Embarking on this website creation journey has been enlightening and is an ongoing learning curve for me. It's crystallized my understanding that, at its core, the internet consists of API endpoints delivering HTML, JavaScript, or raw data. Subsequently, it's the browser's responsibility to weave this information into the websites we interact with. The proliferation of mobile devices has added layers of complexity to web development. Ensuring responsive design across devices can be challenging. Nonetheless, tools like Google Chrome's developer utilities offer immense support. With features like "Inspect", one can even playfully tweak major websites, making the entire process quite engaging!