Sorry, it took me a while -- thanks Imran Khan and Muco Rolle Tresor for the reminder.
The first line of code for Hashnode was written in 2015. Things have changed for good since then and we have better tech at our disposal right now. So, we decided to do a major UI level rewrite of Hashnode in Feb 2018. But we didn't want to spend too much time in low level plumbing work i.e. writing webpack configs, wiring various parts together, setting up dev workflow etc. We wanted to get started fast and be done with the rewrite as soon as possible. Next.js offered us exactly that! Huge shout out to Guillermo Rauch. With Next.js:
Everything comes pre-configured and we just made minor adjustments to make things work for us. That saved massive amount of time that would have otherwise gone waste.
It's just Node.js and React. So, no lock in.
Things like server side rendering, code splitting, routing, static exporting etc come out of the box.
It's fast, well maintained and has good community support.
We just needed to focus on our app, business logic and Next.js handled the rest. Fast forward 1 year - I still love how flexible and powerful Next.js is. Never had any use case where Next.js was a problem. I should probably do a blog post with more insights and details about our experience using Next.js. 🙌