22 March 2013

This is a guest post from Jonathan Clem. He is a Ruby developer at Heroku and is an avid CloudApp user. Follow him on Twitter and GitHub.

Although I work mere feet from @mschoening (co-founder of CloudApp) and the rest of my team at Heroku, the majority of our work-related communication happens on Campfire. Our conversations are open to commentary and input from anyone interested in the topic at hand, and it’s easy to search through the backlog for a conversation that happened days before.

We are constantly sharing screen captures of features we’re working on, and CloudApp makes it easy to take a screenshot and paste a link into Flint for the team to take a look at. Until recently, however, there wasn’t a particularly easy method of sharing previews of user interaction on Campfire or GitHub. We’d take a screen recording with Quicktime X, but that doesn’t display instantly in Campfire like an image does, nor is it visible in a GitHub issue without clicking a link.

Gifs are a great alternative for showing off little UI interactions, because they show up in Campfire/Flint and GitHub threads without having to click a link. I can scan a conversation and see how an interaction has evolved over time.

ffmpeg does a fine job of converting a screen recording to a gif for pasting into a thread, but it’s not particularly useful to have to memorize this:

ffmpeg -i -pix_fmt rgb24 -r 10 recording.gif

…and one still has to upload the resulting file to CloudApp to get a public link.

I decided that it would be nice to have a tool that knew what I wanted to do with these .mov to .gif conversions and just did the whole thing for me. So I created Gifify. Gifify takes a .mov file, converts it into a .gif, uploads it to CloudApp and copies a link to your clipboard.

Given a Quicktime X screen recording called, I can convert it to to a gif and upload it to CloudApp with a single command:


As long as I have the CloudApp gem installed, I’ll have a link copied to my clipboard that’s ready to be pasted into Campfire, Flint, GitHub, or anywhere else that supports displaying .gifs:

hooray gifify.

The original inspiration for creating Gifify came from this post by Richard Schneeman, with additional help from this gist.

Gifify is being developed publicly on GitHub, so please fork it and submit pull requests and issues! For starters, I’d love to see the dependency on the CloudApp gem removed.