Ghost release for Kickstarter backers

ghost, nodejs, javascript

September 20, 2013

So, Ghost was recently released for all Kickstarter backers. Being the huge fan I am, I immediately downloaded. I must say, I’m impressed. John O’Nolan and crew really showed out, rolling out a solid initial platform! I’m still in the process of playing around with it—installing themes and creating my own to see just what is possible with Ghost—but I’m pretty excited. I can tell a lot of care went into this product. But enough fawning, check the jump to view a semi-comprehensive review!

A semi-quick review, and initial impressions

From playing around with the admin UI, publishing a couple of dummy articles, and poking around at theme building, Ghost is great. It does exactly what it set out to do: be a blogging platform, and nothing more. It’s dead-simple. Digestion of content and settings are immediate, or near about. As a theme developer, I’m excited for a couple of reasons. First is Ghost’s decision to move to Handlebars templates for theme logic. This makes for a much more readable theme in my opinion. It also helps keep overly-complex logic from mucking up your theme, maintaining a separation of concerns. The second reason I’m excited is plugin development. Because Ghost is built on a JavaScript back-end, I don’t have to wrap my brain around new syntax to wire up a plugin. And, because Ghost is built on Node, we have the benefit of using existing libraries installed via npm to assist in development. So sure—Ghost is “just” a blogging platform—but we can extend the hell out of it if we wish. And we can make sure that these extensions stay out of core, making for modules that extend functionality instead of contributing to a bloated overall platform.

Now, onto the not-so-great: Ghost promises to be a “just a blogging platform.” One would expect a level of simplicity because of this statement. However, because of the team’s decision to go with nodeJS, setup isn’t as easy as that famous five minute installation readers might be familiar with. One needs to be familiar with node, and working with the command line, to get this up and running. I personally didn’t have any problems, but those unfamiliar with the command line might see this as a detractor. This setup also extends to hosting. Whereas most hosts come equipped to deal with PHP out of the box, you might have a harder time finding a nodeJS host. To this end, I’d recommend something like Heroku or NodeJitsu for your hosting needs. To that same point: nodeJS is far from mature. It hasn’t even reached a version 1.0 release date. So, Ghost developers will need to stay more on top of the ball regarding plugins than, say, a WordPress plugin developer. There are also a couple of things I’d change, UI-wise. These are small things, but I figured I’d mention them. One thing that drove me crazy is, on the admin screen for all posts, the edit and settings buttons are on the far right of the post. It makes far more sense for me to have them available on hover on the all posts. And yes, I know that this is a responsive admin page and the edit / settings buttons make sense on mobile. That should be a relatively simple fix with media queries.

Screenshot of Ghost admin UI displaying an arrow pointing to where the edit and settings icons should be.

My gripes really are trivial (and minimal), and not enough to warrant not adopting the platform. My opinion? Ghost lived up to its expectations as a no-nonsense, beautifully thought out blogging platform. The UI is easy on the eyes, and the ability to write in markdown means I go from draft to final copy in a couple of edits. Sure there are some bugs and quips; those are to be expected with a platform not even enjoying a public release. But I’m excited; if Ghost is the future of blogging, I’m sold.