Wednesday April 30, 2014

✦ Announcing KeyGrip: the Pasteboard Presentation Tool

Josh Smith and I have been busy building a tool to help us tell a story while live coding in our presentations and workshops. We’ve decided to open source it and we’re ready to share it with you.

Behold: KeyGrip.

KeyGrip quick screencast

A while back Apple wrote a Mac app called Demo Monkey that gave you a list of things you could click on to put them on the pasteboard. It made presenting code a little bit easier since you could break up what you wanted to show into chunks, weave it into a narrative, and paste as you go to demonstrate.

But that required having a window visible on your Mac with a list of clips. And if you’re like me, you still needed script notes somewhere near by to stay on track and remember what clip goes where in the flow.

That’s why we wrote KeyGrip. After iterating on a few different ideas, we settled on a Mac server and a Universal iOS client. Run the client on an iPad Mini and it shows your presenter notes interspersed with code snippets—all generated from a Markdown file. If you tap on any of the code snippets, it instantly shows up on your Mac’s pasteboard.

The Mac and iOS apps communicate seamlessly over Bonjour. All you have to do is make sure they have the same string identifier so they can find each other. The Mac server also live pushes changes to the iOS client while you work on the Markdown script. You can get into a slick editing workflow where you adjust your notes and try out your code examples.

Yeah, I’m biased. But I gotta say…this thing is like magic.

You can download a binary of the Mac server right from the README. You can download the source and build the iOS app to install it on your favorite device. Enjoy!

Oh, and special thanks to Derek Briggs for the icon. He’s got plans to help us polish up the interface a bit over time, too. :)