Bye Bye Ghost, Hello Hugo

Bye Bye Ghost, Hello Hugo

“The Only Thing That Is Constant Is Change -” ― Heraclitus

This blog site has changed quite a lot since the begining. I initially developed it as a Django application. It was part of my learning process, and I hosted it in a private shared server.

But unfortunatly, good days came to an end, I had to give up that hosting for costing. So I was looking for a solution which will allow me to host it for free(as I already purchased the domain). Then I found out about github static page hosting.

Initially I tried with Octopress. It was an awesome, till it wasn’t anymore. I had really hard time using it with builds and configuration. Once my PC crashed, and it felt like the end of the world to fix the octopress.

Then, to resolve that issue, I started using ghost. Up till now, I have been using it. Its a fantastic tool for blogging with superb interface, markdown support and so on. Initially I used ghost buster for generating the static site. I was stuck with ghost 0.11 for a long time, because upgrade was a hassel. But I finally did that using docker.

But, again I started to face troubles with this setup. As buster is not activly maintained, and ghost was evolving, it was no longer competible with latest ghost. So I started to use a custom fork of buster. It worked fine with some manual tweaking. Here is the tweaked version. I had to rename every reference from localhost to via IDE. And some links were still ended with index.html. Which I had to fix time to time.

But there was a huge struggle which came in, when I tried to migrate ghost from 1.11 to 2. All my route paths changed, and it was a disaster. I put a hack on the 404 page to redirect older urls to newer ones. But user experince or SEO was pretty bad.

Thing is that, ghost isn’t built for static site, buster is itself a hack tool to get ghost’s contents. Still, ghost is good for personal blogging or if you host it yourself. I have a docker version of ghost to make it usable in any platform/nodejs version.

Finally, by going through several blog sites, I found Hugo. Its really fast and most importantly it has static page generation support. Also, it fixed my url issues with url aliases. I was able to map my old urls to new one.

So far so good. I am really enjoying Hugo, and transition from Ghost to Hugo was very smooth, thanks to this post. I am using Hermit theme, which looks really cool.

Finally, thank you Ghost, I will miss you. But I am looking forward to Hugo for upcoming future.

BTW I have moved out of using Disqus. Although it is fine commenting mechanism(still recommended) but using a opensource solution is always tempting. Also in provides tracking free commenting mechanism and stores comments in github issues.

Last updated: Apr 07, 2021

← Previous
Control Application Flow from Redux Middleware using React Router 4

Build connection between state and routing in React Redux, then control it from Middleware.

Next →
Testing for Django Rest Framework with Factory Boy and Faker

“I’m not a great programmer; I’m just a good programmer with great habits.” ― Kent Beck …

Share Your Thoughts
M↓ Markdown