<story><title>MacGap: Desktop WebKit wrapper for HTML/CSS/JS applications</title><url>https://github.com/maccman/macgap</url><text></text></story><parent_chain></parent_chain><comment><author>zbowling</author><text>I&apos;m building a framework some what like this but maybe better for some use cases.&lt;p&gt;It&apos;s still a work in progress but it&apos;s part of my tinderbox application.&lt;p&gt;&lt;a href=&quot;https://github.com/zbowling/tinderbox&quot; rel=&quot;nofollow&quot;&gt;https://github.com/zbowling/tinderbox&lt;/a&gt;&lt;p&gt;It embeds a node.js server in the background (soon it will embed a custom Node server were I forked libev to use libdispatch on the mac and run behind inside a secure XPC server that launchd will manage on the Mac). Then using a Unix socket, it serves up through a custom webkit protocol handler. Two way communication to the frontend from a custom webserver written in Cocoa.&lt;p&gt;Instead of going down the road of trying to write Cocoa code with Javascript, instead just surface what you need as you need to your own backend. It&apos;s abstract so that it can be reused in other applications on other platforms in the future. Node.js was a good solution because it offers sandboxing and eventbased IO which for my first use case (Campfire) made prefect sense.&lt;p&gt;Doing this kind of binding with a generated kind of interface is always going to keep fighting an abstraction. (Like fighting some C++ lib you wrapped and are trying access through SWIG). My approach you just use the tool best suited for the job and embrace both Cocoa and Javascript.</text></comment>
<story><title>MacGap: Desktop WebKit wrapper for HTML/CSS/JS applications</title><url>https://github.com/maccman/macgap</url><text></text></story><parent_chain></parent_chain><comment><author>mceachen</author><text>Sitting next to the developer of MacGap (we both work at Twitter), the first thing that I asked was &quot;what about Fluid?&quot; &lt;a href=&quot;http://fluidapp.com/&quot; rel=&quot;nofollow&quot;&gt;http://fluidapp.com/&lt;/a&gt; -- and Alex&apos;s first retort was that this was open source, and free.</text></comment>