For our learning group rubyseeds, we have a Jekyll blog, where we document the topics we talked about.

When I write a new blog post, it requires some steps:

  • Create a new file in the _posts/ folder with the following naming scheme: yyyy-MM-dd-title.md
  • in the new file, create the frontmatter which consists of title, category, layout and date
  • A date always has the following scheme: yyyy-MM-dd HH:mm:ss
  • Title, category and layout are free text fields
  • Then write your blog post.

Everytime I forget the scheme for the date or a property in the frontmatter. So I copy stuff from an older post and modify the values. From time to time copy-paste errors ocurr and I see them the first time when the post is published. Don’t get me wrong here, I like to blog with .md files, but the manual effort is higher compared to writing a post in a WordPress based blog.

To automate steps and avoid all the copy-paste errors, I started writing a small graphic tool called hipblog* which helps me writing blogposts.

Don’t expect anything special, there only there are just some basic text input fields for all the values, that’s it. Behind the curtain it manages to create the frontmatter and a filename compliant to the scheme I listed above. It also reads existing .md files which means it parses the frontmatter and fills in the necessary fields in UI.

The benefit is, I can focus myself on writing blog posts and I get rid no copy-paste errors. When I have time, I plan to implement git support, means I can publish a new post directly after writing from the same tool and I don’t have to switch over to command line.

* For Mac OS X


  • Proper error handling at parsing files
  • Validation
  • Git support (version a single file, push to remote repository, …)
  • support for multiple files