Introduction

When I decided to reboot my blogging life, I decided I wanted to do a couple of things. I wanted to leave my archives alone. There are already too many broken links, and I’ll never go back and fix them all, and I just wanted a fresh start. When I first got my own web hosting, I landed on Wordpress, and that’s what I’ve used ever since. It was pretty spiffy in its day, but over the years, it got bloated, slow, and I wanted something new. Enter Ghost.

Ghost is a very simple, lightweight blog platform, and it’s what powers this blog. I’ve had a few people interested in it, so I’m going to write up a little review and answer a few specific questions I’ve got about how it works. I’ll try to keep this reasonably short, but for such a focused thing, there sure is a lot to talk about.

Technical Specifications

When I first launched Ghost on this domain, sometime around November, Ghost had only been available to the public for about a month. My particular instance is running on Linode, a virtual private server host. I chose this because I wanted to run my own server from scratch. For reference sake, I am running Ghost .3.3 on CentOS 6.2, with nginx as the front-end proxy.

Installation

There are multiple hosts which have one-click installation options for Ghost, but now that the people who are writing Ghost have started their own hosting service, I’d say that’s probably the best way to go. You may lose some flexibility on the back end, but you’ll always have the latest releases, and will have easy access to people who really understand your blogging platform. You can sign up at Ghost.org. Unless you want to go with your own server that you can do whatever you want with, Ghost’s hosting option is probably your best bet. Personal plans with 10K views are $5/month, and they scale up from there.
If you let them host it: Installation is no problem.
If you host it on your own, it’s a little more complicated, but if you’re reasonably Linux savvy, you shouldn’t have too much trouble. The documentation is superb.

Use

Now, Ghost is made for one thing, and with one goal in mind: Creation. It is made for distraction free creation, and almost every piece is geared toward that. It is single-user, for now. Multiple users are on the roadmap, but for now, just the one. After installation, you set your username and password, and that’s that. The management interface is equally simple. You’ve got some basic settings, your content, and the new post editor. That’s it!

admin

Writing new posts can be extremely straight forward, depending on how much formatting you do. Instead of having a WYSIWYG or even HTML editor, Ghost uses a format called Markdown While markdown has a gentle learning curve, and once you get the hang of it, you can just fly through formatting your posts, without even really having to think about it as you go. If you aren’t familiar with markdown, I suggest you check out that link and come back, because I’ve got a picture of another really great markdown-centric feature. The best part is, if you aren’t comfortable with the markdown syntax, you don’t even have to use it. Markdown interprets HTML as well, so your regular HTML formatting will still work just fine.

One of the questions I was asked was if Ghost had a media library. If you mean a browable library, no, BUT it does allow inline media uploads right from the editor. BUT in order to not clutter up the (extremely) clean editor, it only gives you the upload box when you need it. Not only that, but it will give you multiple upload boxes tagged to each upload, inline in the preview pane. So you can use the markdown syntax to place your images on the fly, and go back and upload them when you’re done creating so it doesn’t interrupt your flow. Here’s a screen shot to show you what I mean.

images

That really sums up the usage since all it does is blog. That’s all. It does not come with comments enable out of the box, but there are plugins available allowing you to add Disqus if you like, and I think built-in comments are way down on the roadmap.

Theming

As I mentioned about the installation above, the Ghost documentation is just top-notch. There are a number of helpful guides available for just about anything you want to do. That said, Ghost theming uses something called Handlebar.js.

I was intimidated by this at first, but when I started looking at themes, I discovered it’s really simple. The documentation shows you all the various pieces you can pull in with the Handlebar syntax, and the rest is just regular, plain HTML and CSS. If you like, you could compile SASS or LESS, but that’s not required. You can include your own front-end javascript, and everything. It’s just like building any other web page, just popping in the Ghost content where you like. No PHP, and super easy.

Conclusions

So far, I have really enjoyed using Ghost. It’s clean, simple, and uncluttered. From a systems administration standpoint, it is REALLY lightweight, meaning I could run multiple instances (ie multiple blogs) without issue on minimal resources, without any performance hits. And speaking of performance, page loads are also extremely fast, largely, I think, because there aren’t large and complex MySQL calls done with large and ungainly PHP loops.

One thing to keep in mind is this software is bleeding edge new. While I have not run into any significant problems, there are some things missing that would be nice. Auto-save posts, for one, would be nice. Built-in comments would also be nice, but I have to admit, not having comments has been a bit liberating. No need to stress over a lack of comments when no one could leave them anyhow!

It’s easy to use, fast, and easy to learn. It helps you focus and create, rather than tinker with settings or post doodads. I’d recommend it to anyone, especially with Ghost’s hosted option. No advanced knowledge required!