This was truly a difficult decision. However, it was one that was necessary in order to easily maintain the content of my business. Gatsby was insanely fast, but me being the only person able to update its content caused more headaches than I could have ever imagined. The speed will be missed, but I essentially built the platform from the ground up by myself. There isn’t an all in one platform like WordPress that you just activate and configure. Many of the simpler things in programming life that I have grown accustomed to, I had to develop, such as Yoast integration. Plus after doing some research, I found WP Rocket would greatly improve my speeds, their pre-loading of URLs makes it feel React-like. I’ll do a post on it in the future, but I’ve tried all the free caching plugins and none of them made an impact. I took a chance with them having a money-back guarantee and upon activation, immediately noticed performance gains. See why this matters.
The build times are long as well, but with some additional development I could have cut this down. The main issue were there was a bunch of little things that needed to be fixed, that I found was easier to just switch everything back. I wasn’t a huge fan of the design, and adding pages was something only I could do, and not my content writer. Is it something I’ll revisit in the future? Oh, most certainly. I believe given a couple more years of development it’ll be easier to maintain the code base by yourself and if not, maybe the company will have an extra developer on hand to tame the beast, because updates alone are enough to cause all sorts of issues. I spent 4 hours tracking down a bug that was the result of another developers code.
With it being a smaller following, updates aren’t as quick as some of the plugins for popular Content Management Systems such as WordPress. I waited a week for the developer to fix an issue and finally had to put in a Pull Request with their repo for the developer to actually fix it. The reliance on other developer code is a lot heavier in React, as there are so many plugins you need just for basic functionality, and if one of them is broken, it’ll break your entire build and send you down a rabbit hole.
So unless you’re a larger company with 2 – 3 developers to spend on one project, I wouldn’t recommend using React, at least not unless you are prepared to spend 3 – 6 months on building everything from the ground up to your liking. I just didn’t have that kind of time. I’ll keep the code base, and revisit one day if I find the time to create a design and fix all the little things I just didn’t have time for. After all, the cool thing about Headless is I just link it to the API and it’ll start building just like it did before I stowed it away, unless of course there are breaking changes in plugins.