A cocoa bridge to OmniFocus

Published
12 July 2014
Tagged

Over the past week or so I've been working on unifying two projects: kanban-fetch and of-store. They have their similarites. both are command-line applications that interact with OmniFocus via ScriptingBridge and do something with the data. Both of them started off as small personal projects, closer to hacks than actual scripts, and have developed considerably due to the fact that since I wrote that article I've had people emailing me and asking all sorts of questions, which have forced me to add radical features like actual documentation and the like.

Both scripts kept on doing the same things: working out whether OmniFocus was running, working out which version of OF was running based on its application ID, working out if projects and tasks were completed, saving them to a SQLite database...the natural progression is to take all this common code and turn it into a reference library.

So I made a CocoaPod

The result is this: JROFBridge, a library that acts as a bridge between Cocoa/Objective-C applications and OmniFocus. The objective is to make it as easy as possible to retrieve data from OmniFocus, iterate through projects and tasks, and as required, write this data to file. The readme is pretty comprehensive, so I'll let that show off the actual use cases.

But it doesn't do <x>!

JROFBridge is a result of two projects with common requirements, but I imagine there's plenty other things I could make it do. If there's something you'd really like to access or do in a Cocoa/Obj-C application that uses the library, let me know.

As it is, I have a couple of ideas for future expansions. Nothing huge, but it might be worth keeping an eye on the project on github in the meantime.

Installation

Add this into your podfile and pod install:

pod "JROFBridge", :git => "https://www.github.com/jyruzicka/JROFBridge.git"