I recently redesigned and redeveloped my entire personal website as a Nuxt.js website served behind a Nginx reverse proxy setup. As for my blog, I decided to go with the GhostJS blogging platform over Wordpress, which is what I used before. It was a tough decision that I was thinking of for a few days, but eventually reached a conclusion. Before I start discussing why I chose GhostJS, lets take a look at the two platforms that I considered best fit for my scenario, as well as the option to use my own custom-made option.
NOTE - Different people have different needs. What might be best for me, might not be best for you! What might be best for you, might not be best for others.
What Is GhostJS Blogging Platform?
GhostJS is a lightweight javascript-based blogging platform created on top of the Node.js framework.
Unlike most blogging platforms out there, such as Wordpress or Drupal, GhostJS uses Markdown when creating blog posts.
What is Markdown?
Markdown is a lightweight markup language that allows users to format text styles easily and in a readable way. With the right tools, content created using Markdown syntax can be easily converted into HTML, which can then be displayed as a webpage's content.
As someone who is experienced with web development, the learning curve for Markdown shouldn't be as hard as learning HTML for the absolute beginner with no coding experience.
If you want to learn more about Markdown, you can read this Wikipedia page.
What Is Wordpress?
Before GhostJS, there was Wordpress, a popular blogging platform that runs off of the programming language PHP.
Over time, Wordpress evolved into more than just a blogging platform, it also became a CMS (content management system).
What made Wordpress stand out is its ease of use, its large community, the ability to easily download and install free or paid themes, as well as the vast majority of plugins you can include to extend your Wordpress-based website's features without having to know a single thing about coding! After all, not everyone was a programmer or took a intro course to HTML and CSS.
On top of that, Wordpress also has the capabilities to include ecommerce functionalities through the power of the WooCommerce plugin. Pretty convenient if you ask me!
Wordpress does not use Markdown. All you have to do is just start typing!
Why I Chose GhostJS Over Wordpress?
Ok, so why the switch? Why did I choose GhostJS over Wordpress? I'm sure that some of you out there who are reading this article can see some pros and cons to my decisions.
In terms of SEO, it would've been a bad choice, but with the help of 301 Redirects, it helps ease that challenge. I mean sure, transferring blog posts over from Wordpress to GhostJS was no easy task, but in my case, I only had a few blog posts, so it was no problem for me. Plus, I didn't have much time to blog here anyways - school, work, and working on my startup side hustle takes up A LOT of time.
So with that out of the way, here are my reasons as to why I chose GhostJS over Wordpress for my blogging platform.
1. Performance, Scalability, and Consistency
What I wanted was a reliable blogging platform that can scale easily. On the technical side of things, keeping things consistent makes the overall process easier. I mean sure, I am running Docker for my setup, which makes that less important, but I preferred to keep things consistent by having my blogging platform also a javascript-based technology.
Wordpress is a beast, both good and bad. It takes up a lot of performance and computing resources. Not only that, as it gets bigger, it gets trickier to manage. Plus, I didn't like that it was based off of PHP because when you get errors or issues that pop up, it gets pretty tedious to fix.
This doesn't mean I hate Wordpress, I love it! That's why I used it in the past as well as for some of my side projects, but long term wise, it wasn't the best fit for my needs.
2. User Experience
I preferred the GhostJS blogging platform's user experience more over Wordpress. It's clean, minimal, and slick. It helps me focus better when writing my blog post. Not only that, the themes that are offered by them and the community, that are free, look very nice.
3. I Needed a Less-Restrictive Website Architecture Solution
When I had Wordpress as my underlying framework, I felt like I was restricted and was forced to conform to their ways when creating my website. Not only that, certain features I wanted to add to my website would require me picking up several other pieces of knowledge that I needed to learn about the Wordpress framework, which I didn't have the time to do. I mean, sure, I did always have the option to learn Docker earlier (didn't have time to do that), and make Wordpress into a headless-Wordpress for REST API solution, but I felt like at that point, there's just to much overhead in performance.
4. Very Simple Custom Themes
The learning curve to make a custom theme compatible with the GhostJS blogging platform was easy and straightforward (unlike Wordpress) thanks to the use of handlebars and it being a Node.js based platform. That means when I have the time or decide to redesign my entire website again in the future, I can quickly redesign the GhostJS platform theme to conform to my main website's look and style without much difficulties or hiccups.
5. GhostJS Is A Independent Javascript Application
GhostJS is based off of Node.js, uses the Handlebars templating system, it's ridiculously faster than Wordpress, and it's just overall impressive.
6. GhostJS Is Available As One-Click Hosting Solutions
Most popular VPS Hosting services offer GhostJS as a One-Click easy setup solution. Yes, Wordpress is also available as a One-Click easy setup solution. It's just that for a non-technical person, if they wanted a fast and minimal solution for blogging on GhostJS platform, one-click, follow the instructions, and their up and running!
Why I Was Hesitant About Switching to GhostJS
Here, you can think of this as a pros and cons section of the blogging platforms.
Search Engine Optimization - SEO
Now, my goal for my blog is for it to help build traffic and establish my personal brand - this means SEO is very important to me.
With that alone, it was obvious that Wordpress is the clear winner here. However, I still switched to GhostJS. The reason being is that they've been making significant improvement to the platform, and not only that, I see it winning on the performance side of things too (also important for SEO), so I ultimately opted in for GhostJS.
In addition, the thought of having to perform 301 redirects wasn't fun, especially for a blogging platform whose URL permalink structure doesn't include a category option (which greatly disappoints me), but still I switched to GhostJS.
Updates, Upgrades, and Maintenance
When I first tried out GhostJS, it was for my startup, Goal Striver. Back then, it was the year 2016, GhostJS didn't have a CLI tool. Updates and upgrades were a pain in the neck to make, and it was confusing. As stated before, I'm a busy person and trying to figure out these technical issues isn't a priority in my agenda. Fast foward to 2018, they've released their CLI tool and it made the process a little bit less painful, so I decided to jump ship from Wordpress.
Why Did I Not Use My Own Custom Made Blog API?
Before I started redesigning and redeveloping my personal website, I had already started making a simple Node.js based blogging platform API.
The problem was it was still new, but simple at the same time. Not only that, it would mean I would also have to create a Administrative panel to manage the blog posts, as well as create additional features for in case I ever plan to release it as open source. These additional features could include a user hierarchy system (Admin, Moderator, etc.) and making a elegant theme support system (which I have yet to figure out).
In addition, I was pressured with time. I didn't want to procrastinate on my main goals just because of some technical issues or challenges. That's why I ultimately settled with the decision of deciding between GhostJS versus Wordpress.
Why Not Use 3rd Party Hosted Solutions?
What I mean by 3rd party hosted solutions are platforms such as Medium. Medium is popular and growing. I've tried it once before. It's great. However, I wanted the blogging platform to be self-hosted. What if one day in the future, Medium goes down? What then? Right? So I determined that sticking with a self-hosted option was the best solution. After all, think for the long term, not the short!
Will GhostJS Beat Wordpress?
As of right now, no. I think Wordpress is here to stay, even if GhostJS were to grow even further and include more features and functionality while maintaining performance, user experience, etc.
After all, a large majority of the websites out there are Wordpress-based websites. Imagine trying to transfer over all those content and 301 redirecting those old links to a GhostJS platform. Not only that, considering that a majority of the users behind those platforms are most likely not web developers, it is not something that's going to happen so easily.
Because at the end of the day, what makes a blogging platform great for one's use, is not the technology that is behind it, but also the marketing and business goals for it, and how it's put to use.
What Is The Future of GhostJS?
Fortunately, GhostJS is pretty transparent and open about this, that they even created a public Trello board for people to see! You can find all of that by clicking here.