Building my website

Personal notes as I build a website for myself using NextJS and various other tools


Ever since I stepped into the role of an engineering manager, my coding adventures took a backseat. It was a deliberate decision—I wanted to focus more on steering the ship of people and projects rather than getting entangled in the code jungle. As a manager, my goal was to let the brilliant minds on my team shine and do their thing.

But hey, I've been feeling the itch to write some code and build stuff. Cue the idea of diving into hobby projects. I needed something small, manageable, and, most importantly, fun. That's when I thought, why not build a website for myself? A cozy corner on the internet to throw in my notes, posts, and essays.

Step 1: Setting up the basics

Keeping it simple was the plan. NextJS seemed like a no-brainer—it's a framework I've been playing with for a while. For content management, I could've gone the DIY route, but why reinvent the wheel? Enter Contentlayer. It had a sweet template for NextJS that I snagged to kickstart the skeleton of my website. Plus, it was riding the TailwindCSS wave, so the choice was crystal clear.

Bootstrapping the project was super easy, all I had to do was clone the next-contentlayer git repository and start coding. Once the repository was setup I just tinkered with some styles and pushed the v0.0.1 for my website on Github.

Step 2: Integrating with Obsidian

I use Obsidian to take a lot of notes My notes, musings—they're all over the place. I needed to fuse Obsidian with my website to share my thoughts. So I started tinkering with a way to integrate Obsidian in my workflow.

First step was to set up a new vault in Obsidian using the content folder in the website repo. Here's the kicker—Obsidian doesn't groove with MDX files out of the box. A plugin fixed that problem and I was all set to write my notes using the Obsidian editor. Yet, one desire lingered—what if I could publish straight from Obsidian? A puzzle for another day; let's get the website out first.

Step 3: Releasing the website on Internet

I decided to use Vercel cloud to deploy the site on Internet. This was again super simple. I needed to connect my Git repository with Vercel and it took care of everything. Once the site was deployed, I had to go and change the CNAME record for my DNS to point to the Vercel deployment address. All in all, I had my site up and running with some tweaks in about 2 hours.