MERN is increasingly becoming one of the most popular tech stacks used for building robust, reliable, and powerful websites with modular and adaptable components. I have been developing websites ever since I first created one using Webs, a drag-and-drop site builder is now obsolete. I was 13 years old then and have come a long way from there, tinkering with various different CMS tools, from WordPress to Joomla to Webflow, and with various stacks for building websites.
I had used WordPress for a long time until I started feeling that no matter how good the plugin or themes marketplace is, there are certain features for which you’ll have to write custom code. And I could not find good resources or official documentation on how to develop custom tools for it, partly because I didn’t like PHP. That was the first time I thought of going back to having a custom website. The timing was perfect as I had been learning about React and Nodejs.
Building a custom website
I wanted to build something amazing and was ready to invest the time and effort needed to make that possible. After trying a lot of ideas and rejecting them, I finally started designing the UI of what would be the final website I ended up using for about two years until May 2022. I wanted two things: a minimal yet sophisticated website that would appeal to (and hopefully inspire) front-end web developers and to have modular components that are adaptable to the context and layout of the page.
I started designing the computer version of the website first. I used a combination of Figma and Sketch for this. I loved the final design I came up with. I then started scaling the fundamental design to a tablet/iPad and mobile version to make the website responsive. After that was ready, it was time to start writing the code for the site. Since I was not using any library such as Bootstrap or Bulma, it took me a lot of time to write the CSS for the site to make it match my Figma prototype.
I also added dark mode, keeping the main structure the same but changing the colour palette and adding an extra flavour to the mode. I made it so that it automatically switched to light or dark mode according to the system setting. I did not add a toggle, however, because I thought it unnecessary and would take away from the sophistication of the site.
I added so many details to my website which I’ll not further discuss (maybe write another article about that). Ultimately, my aim was to focus on every little thing about my website and I was proud of the final product, which is still available at www-2.rohantinna.com. It took me around 3-4 months in the entire process and I was able to spend that time because it was my gap year.
Switching back to WordPress
After about two years of keeping my custom website, I felt the need to add more and more features but didn’t have the time to build them with the same level of detail.
In the entire process of going back and forth, I learnt that building all parts of a website from frontend to backend and integrations from scratch is not worth it. Needless to say, it is redundant because there are plenty of frameworks, CSS libraries, and CMS software to streamline the process and take care of all the nitty-gritty things.
For weeks, I kept thinking about whether to stick with my custom stack or switch to a CMS system that would instantly provide me with most of the components needed for my website. I even started developing my own blog application to add on to my stack but it was taking a lot of time so I decided to look for third-party CMS tools. I considered a lot of options — Webflow, Ghost, Medium, WordPress, Wix — but decided to go with WordPress because I felt it offered me the flexibility of adding custom features easily along with a lot of built-in tools. WordPress also has a large plugins and themes library and is not as expensive as some of the other options I considered. So, finally here I am with my new website for which I’m using WordPress. It has been good so far but I did not get enough time to work on it thus far.
My recommendation for anyone in the same situation would be to go with the custom website if you have the time and enjoy web development. Also, you should also consider asking yourself why you want a custom website. In my case, I just wanted a personal touch and, during the time, a fun project to work on. If you just want to have an online presence or build a website for your business, I would recommend using WordPress or other such tools.
Kudos to you reading the entire article. I hope you enjoyed it! Feel free to explore other articles on my blog & connect with me on social platforms. Cheers!