Mono チームは,Mac OS の主要アプリケーション環境のひとつである Cocoa API 用のブリッジを開発した。Apple のオペレーティングシステム用アプリケーションが C# で容易に開発可能となる。
MonoTouch での成功をベースとして,Monoチームは,Mac の主要アプリケーションフレームワークである Cocoa とのブリッジを開発するプロセスを開始した。Mono の生みの親である Miguel de Icaza 氏によると,MonoMac には 2つのタイプのバインディング がある。
- AudioToolbox,CoreGraphics,CoreFoundation,CoreText などのフレームワークで使用されている,C 言語ベース API 用の P/Invoke。
- MonoMac.ObjCRuntime – MonoTouch で開発された btouch バインディングジェネレータを利用する,新しいバインディングエンジン。btouch は API 規約を記述した C# インターフェースを元に,必要なバインディングを生成 するものだ。バインディングのプロセスは,最後に多少の調整が必要なことを除けば,ほとんど自動化されている。
MonoMac は部分的に完成している。Mono では,残りの作業を行うための協力者を募集中だ。
- CoreFoundation (必要な部分,設計方針(design principles)を参照)
- CoreText (完了)
- CoreGraphics(完了)
- Foundation (必要な部分,および残りをサポートするヘルパツール)
- AppKit (残りおよそ 30%)
Mono には以前,CocoaSharp という名称の同じようなプロジェクトがあった。このプロジェクトは 2004 年に Geoff Norton 氏によって開始され,2005 年には最初のリリース を発表している。開発は 2008 年まで続けられていたが,de Icaza 氏は 2009 年 5 月,開発への投資継続の意志が Novell にはない,と発表した。この CocoaSharp で獲得した Cocoa 用 C# バインディングの開発経験が MonoMac でも活用されている,と氏は語っている。
Monobjc という,.NET - C-オブジェクト のブリッジもある。バージョン 2.0 は十分な完成度を持ったバインディングとなっていて,Cocoa,WebKit,QuickTime,あるいは DiskRecording などの Mac OS X フレームワークでのプログラム開発を容易にするとともに,Mac OS 10.4,10.5,および 10.6 の 1,400 以上のクラスと 7,000 以上のメソッドへのアクセスを可能とする。このブリッジは MonoDevelop IDE に統合されていて,ドキュメントとチュートリアルも提供される。