March 1, 2025

|technology

My Personal Blog

Hey there! Welcome to my personal blog. It's a place on the internet which I can call "my own". The purpose of building this website was to not only delve deeper into the world of ReactJS, but also to use it as a great learning experience for building something from scratch and watching it come to fruition. The beauty of building a personal website is that it can be whatever I want it to be, while also being the owner of my content.

The Tech Stack

Before even writing a single line of code, I had to decide on what technologies to use for the website. Honestly, it was both a blessing and a curse. On the one hand a blessing, because there are so many awesome open source tools available on the web, but on the other hand a curse for the exact same reason. How do you know what to pick when presented with a near infinite amount of options? I've ultimately decided to use the following.

  • NextJS: As recommended by the official ReactJS development team. I've made use of its Static Site Generation capabilities to make pages load blazingly fast. The routing and deployment was also an ease to setup with the use of their in-depth documentation.
  • TailwindCSS: For styling the website and its components. It removes the need of thinking of class names and hopping between files which makes for a more efficient developing experience.
  • Motion One: To breathe life into the site by animating my components which makes for a more pleasant user experience.

Using this stack not only allowed me to have a smooth developing experience because of my previous experience in working with parts of this stack, but it also let me gain a deeper understanding of using these tools by diving into their official docs.

For managing my content I'm using TinaCMS and Cloudinary. Tina's rich text editor with the ability to view changes live was the main draw for it over its other Content Management System competitors. The drawback was its limited documentation, but they've been expanding their docs at a great speed.

TinaCMS editor

I opted for Cloudinary over Vercel for storing the images, because of its generous free tier while keeping the images responsive.

Final Words

It was quite an interesting experience to build something mostly from reading the documentation and scavenging the web for solutions to my problems. There's still a lot I would like to add the site, but this is a good start!