Moving blogging platform to Ghost

Welcome to my new blog. Like it? I hope you do as I know I prefer it to the the Blogger version I was originally using. Moving platforms had its ups and downs so I thought I would detail a bit of the journey.

Getting started was quite easy, I decided to trial it with Ghost where the nice guys there will do the import for you (of course they will, they want you to sign up with them). Most of the transformation went without a hitch but I have quite a few code samples and not all of them converted properly and so I had to do that work myself. Thankfully Ghost uses Markdown so with a bit of abuse of the <pre /> tag I managed to get some semblance of order to the posts. But it wasn't perfect as the code samples were rather plain and I rather liked the code-highlighter script I was using on Blogger. To get round this I needed to work out how to create my own theme.

Creating your own theme sounds daunting doesn't it, I know I was already in strange waters so I was initially hesitant to go down this path. I looked at using the Code Injection section but unless the highlighter code I was intending to use had a CDN or I had an alternate hosting location this was going to get messy and very quickly unwieldy. I also wanted to use my little purple monkey icon for the favicon.ico and I couldn't see how I could do that within the management portal. So, I had a deeper investigation into how themes are deployed into Ghost via the portal and quickly realised it was just a zip'd up folder of files. I actually liked the default Casper theme so I used Github to fork the repo and then branched again to make my changes. I know it seems complex but I wanted a way to apply any fixes back (should, in the unlikely event, I find any) but more so I could take fixes from the original and apply them to my branch and even cherry pick changes should I so wish. Eventually I suspect the changes I will probably make will make this a near impossible task but until then...

So applying the favicon.ico change seemed the simplest thing to start with and with a little help from Ghost For Beginners (an excellent resource) I was on my way; you can see my change here on github. Emboldened I decided to try my next change which was add a code highlighter script. It was suggested I try Prism and as it had most of the features I wanted I gave it go; see change here on github.

Both these changes were quite simple and testing them by zipping the folder and uploading via the portal was quite easy. It would be nice to be able to push my changes via Git (as all the cool kids like to do) but for now it would suffice.

Now all I had to do was re-edit my posts and apply the appropriate markup and I was done.