Have a lightning fast blog and host it for free
š” This post is very old now and the information below may well be inaccurate.
I recently migrated my blog from Wordpress to Silvrback to Ghost. I was very happy with Silvrback, itās an excellent writing platform. In the end I got fed up not being able to change how my site looked (no theming), so switched to Ghost.
Iām a bit of an uptime and performance freak. This website is relatively lightweight and performs well in most situations. I wanted to ensure it performed the best it ever could and sustained 100% uptime. Ghost isnāt difficult to setup on your own server but there are so many advantages to hosting a static site vs one that is dynamically generated server side with a database backend. Nor did I want to pay for a hosted solution once I discovered you can host your static site for free using GitHub Pages.
Static Ghost
Enter Buster. Buster is a static site generator for Ghost. There are many reasons you might want a static site
- Host it anywhere
- No database dependancy
- Better performance
- Easy to backup
- Far more secure, no admin backend
Getting Buster setup was easy and in 10 minutes I had a static copy of my then hosted Ghost blog. You can actually target any Ghost blog hosted on any server with Buster, itās quite powerful.
GitHub Pages
Before you buster deploy
youāll want to setup a GitHub account (free) if you donāt already have one and then configure a GitHub Pages respository (also free) as per instructions here. Make sure you follow the guide on configuring a custom domain before you make and DNS changes.
My Workflow
I have a locally hosted copy of Ghost running on my Macbook and I target this using Buster. Getting Ghost up and running locally is very simple. The great thing about having a local install of Ghost is that I can publish posts before Iām finished, make styling changes etc and preview what they look like on the site before statically generating the updated version and pushing that to GitHub. I store my Ghost installation in my Dropbox along with the static files.
- http://127.0.0.1:2368/ghost
- Write post
- buster generate ādomain=http://127.0.0.1:2368
- buster deploy
Performance
GitHub sits behind the Fastly CDN. You may not of heard of Fastly but they CDN for the likes of Twitter, Disqus, The Guardian, Shazam. Converting your site to static files and hosting with GitHub Pages will guarentee to improve performance. My siteās load time before I moved was 1.6s. My site now loads in just over 330ms. Make the switch today. Loadsofpeoplearemovingtostatic.
Amazon S3 + CloudFront
If you donāt feel comfortable hosting your website for free then Iād highly recommend reading PaulāsāHow To: Hosting on Amazon S3 with CloudFrontā. Paulās site is built using Jekyll 1, as are most blogs hosted on GitHub Pages, but you can follow pretty much everything he does to get your Buster generated static blog online.
- Buster is built from Jekyll