I have a lot of projects in my mind, some of them are in progress, some are finalised but needs attention and some hasn’t even started yet. That’s why I have decided to build a personal website, to keep track of my projects.
Some of you know me as a Drupal guy. Well, that is partially true, I have specialised in Drupal and mostly I make money out of Drupal projects, but I am into all web technologies as long as they are innovative and serve to the purpose.
Why not Drupal as a personal website but GoHugo?
For a personal site, I had a few options.
- Drupal: Drupal is powerful, well, too powerful for a simple site. Building your personal site on Drupal is like using a helicopter to go to the toilet. I really didn’t wanted to build a VM just for this purpose, deal with core/module updates regularly, handle caching, using memcache and varnish, build content types, views, entities… It just is way too expensive for a simple website. Plus, I checked the personal website themes, both free ones and the ones on theme forest and honestly, I couldn’t find anything suitable for a personal website. They are either for a one page site or too complicated for a personal website.
- Wordpress: Frankly, I don’t like WP at all. It just doesn’t make sense for any purpose. It’s way too complicated for a simple site and not powerful at all for a complicated product. It’s hard to develop on, hard to maintain, lots of security issues… They always have amazing looking themes though, I think that is the reason people are prefering WP over Drupal mostly cause Drupal themes mostly sucks, that’s a fact. If you buy a Drupal theme from the market, the pages are never using the API correctly and mostly hard coded in content which is horrible and makes the theme completely useless. Anyways, WP didn’t makes sense for this purpose either.
- GoHugo: So I went to github and searched for a simple framework for simple sites. Actually, checking out projects randomly in github is something that I do regularly. You can’t believe the free software that you can get on github. Just list the projects by the most starred and see for yourself. Anyways, I saw GoHugo, first thing I did was to check out the themes, they looked pretty good (well, one is enough anyways!). Then I checked the structure, it looked just great, made a lot of sense. All the config is on YAML files (or TOML, or actually they can be anything you like them to be), it doesn’t need a db connection, it uses Markdown for the formatting and it simply generates static files to be hosted on anything you like when you are done. Obviously, it was a win.
The install on Mac was as smooth as it could be via brew, creating the pages was very simple as well. You just run hugo
when you are done, rsync the static files with your server and voila!
The only down side for the public use is that you need a bit of coding background to use it and publishing new posts, but I believe people will contribute GUI tools to make it easy to use. There are already some tools I found like enwrite to post via Evernote.