I cloned the repo and within minutes found myself bearded, in a coffee shop, listening to music that hasn’t even been released yet.
— Ars Technica user chocoruacal (Node.js-based Ghost blogging platform opens to the public)
I’ve played around with blogs in the past, but now I’ve finally decided to commit to one.
The first step is to decide which blogging platform to use. For my needs, the platform must:
- Be simple and easy to configure
- Allow me to control my content on my own server
- Allow for easy entry and formatting using a language like Markdown
- Have a clean theme (although flashing banners are always fun)
The first platform on my list to try is Ghost.
What is Ghost?
According to the official Ghost website:
Ghost is a platform dedicated to one thing: Publishing. It’s beautifully designed, completely customizable and completely Open Source. Ghost allows you to write and publish your own blog, giving you the tools to make it easy and even fun to do.
It’s simple, elegant, and designed so that you can spend less time messing with making your blog work - and more time blogging.
Ghost was originally thought up by John O’Nolan (@JohnONolan) in a blog post. After being featured on Hacker News and receiving lots of attention, a Kickstart campaign was formed. The campaign raised £196,362 of its £25,000 goal, and released its first public version of Ghost on September 13th, 2013.
Although you don’t need an account to view the Ghost documentation, an account is required to find it. The link is hidden until you’re logged into the Ghost website. How annoying!
After finding the documentation, it’s obvious the setup instructions are made for people who are familiar with the command line. The average blogger would probably find the installation process a little daunting.
If you’re familiar with the command line, you can simplify the installation process even more (assuming you have HomeBrew installed):
$ brew install node $ git clone https://github.com/TryGhost/Ghost.git && cd Ghost $ git submodule update --init $ npm install --production $ npm start
Then open your web browser to http://localhost:2368/.
I was able to get a Ghost installation up and running in under a minute using DigitalOcean. Their UI was extremely easy to use and the whole process was painless.
The Raspberry Pi is also a fun, affordable hosting option.
Writing with Ghost is a pleasure. The Markdown editor in combination with the live preview makes for a simple experience that gets out of your way. There’s no ugly formatting bar with a thousand buttons like Wordpress. With Ghost, you just write.
The editor isn’t perfect, though. Occasionally, the scroll position of the preview pane will be incorrect when editing a post. When this happens, the live preview will flicker and your newly-entered text will be off the screen.
At one point, I managed to forget my password for my local copy of Ghost. While attempting to reset it, I noticed that Ghost never sent the reset instructions. I was completely locked out of my own blog!
After digging around for some time, I found instructions for manually resetting the password inside the SQLite file. Yuck!
It’s clear Ghost has a long way to go before becoming accepted as a mainstream blogging platform. The next platform on my list to try is Jekyll.