Journey from Wordpress to Hexo and Clarity
Purpose
I recently moved my blog from Wordpress to Hexo. Also, I moved hosting platform from Siteground to S3 (AWS). This blog post details the rationale behind the decisions. It also describes how I learnt to build a Hexo theme using VMware Clarity environment. So overall this captures the following topics:
- My journey from Wordpress to Hexo
- From hosted environment to static self hosting
- And finally building my own theme in hexo
- Also I will cover some portion to make the blog SEO optimized
If you are interested in the above topics, then read on.
Why S3 and Static Site
My site was built on Wordpress and hosted on Siteground. Siteground provides very good services. I never had issues with Siteground. Also, Wordpress is a very good platform, well tested. Very easy to use and widely supported. So why did I decide to move away from both the platforms? The main reasons are given below:
- Performance
- Convenience
- Financial
Let me explain the reasons one by one.
Performance
I noticed that instead of my best efforts (making my site minimal and applying a ton of optimizations) it was still not fast enough. The response time was sometimes in > 10 seconds range. At best, I got around 5 seconds response time in Pingdom test. Got similar results in GTmetrix and Pagespeed test.
Convenience
In Wordpress, I was forced to use the themes developed by others. I wanted to use a minimal theme with no extra options. But was always limited by the themes. Also, I could not apply or use best practices for SEO optimizations all the time.
Financial
My contract renewal with Siteground was coming up. Their renewal charge was USD 239.40 for a year. This was a substantial amount for me.
Choosing the platform
The first decision was to choose a platform which will be faster and will provide me absolute control over every aspect. Since my site is pretty static in nature (once I write a blog, I do not change it) I decided to go for static websites. Static websites are amazingly fast as they do not need to build and deliver at runtime.
So, I decided to go for static website. Next question was to select a static website generator. You can check this site for available options for static site generators staticgen.com. The following were the main contenders.
Genarator | Language | Template |
---|---|---|
Jekyll | Ruby | Liquid |
Next | Javascript | Javascript(React) |
Hugo | Go | Go |
Gatsby | Javascript | React |
Hext | Javascript | EJS,Pug |
I chose Hexo because of the following reasons:
- I am most comfortable with Javascript as I have experience in that.
- Generating a site in Hexo is pretty fast (much faster than Jekyll)
- Lot of available plugins
- I found EJS for templating to be easier than React
Hosting the Website
So, platform and generator was selected. Next big question was to decide where to host the website. Since Siteground was charging a premium, I was not ready to shell out that amount.