The existing MacLibre2 codebase is in Python, and the Cocoa API is an Objective-C API. Fortunately there's a bridge called PyObjC, which allows the Python and Objective-C objects to talk to each other. This does cause some weirdness, such as requiring certain method names to end in an underscore.
Implementation of the Cocoa interface is going a bit more slowly than I had hoped. The official tutorial uses Interface builder 2.X, which is significantly different from the current version.
Currently I'm trying to get an NSOutlineView (for the list of installable packages) working.