4

Our product, a desktop app, is composed of a ton of HTML5 and JavaScript together with a thin platform-specific layer that is basically a WebKit shell. Since this is much the same strategy as a framework like Appcelerator Titanium, and we waste way too much effort on this custom WebKit shell code, we were hoping to switch to Titanium or a similar framework to handle that for us.

However, such a switch would be much more compelling if we could pick up a nice modern JavaScript engine in the process. Like Titanium, we're currently on JavaScriptCore, which sucks (they still don't have Function.prototype.bind!). We'd take either V8, for speed and modernity, or Rhino, for yummy JavaScript 1.7/ECMAScript Harmony features.

Does anyone know of a framework for building desktop apps with HTML5 that uses either of these engines? Or some way of making either work with Titanium that will be very little effort? I saw the v8_titanium and rhino_titanium projects on GitHub, but see no mention of them anywhere else, or any documentation on how to use them. And the Adobe AIR WebKit page has nothing encouraging either.

Domenic
  • 110,262
  • 41
  • 219
  • 271

5 Answers5

3

Node-webkit is just about done being ported to use cef3. https://github.com/rogerwang/node-webkit/tree/cef

  • +1, I've been looking forward to this. Hope it works out well. – Domenic Apr 23 '12 at 05:44
  • 1
    After using appjs, I ended up switching to Node WebKit as it seemed better supported (it's an Intel project). Also, the packaging options are great with the ability to create a one file executable. – Joe Wood May 23 '13 at 20:08
  • AppJs actually has a poor canvas performance. Node-webkit is fast and is quite suitable for packaging HTML5/CSS/JS games. – Cliffmeister Oct 23 '13 at 07:01
2

To follow up on this, we've just published binaries for all 3 platforms at https://github.com/milani/appjs | http://appjs.org. That's Chromium and Node, provided as a package that works out of the box with no configuration cross platform.

1

We ended up on Chromium Embedded, which is a bit rough around the edges but definitely gets the job done.

Domenic
  • 110,262
  • 41
  • 219
  • 271
1

You can use Adobe AIR to build HTML5 desktop apps.

AIR uses the webkit engine: http://help.adobe.com/en_US/AIR/1.5/devappsflex/WS5b3ccc516d4fbf351e63e3d118666ade46-7ec1.html

See also:

http://help.adobe.com/en_US/AIR/1.5/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-7ecc.html

bob
  • 7,539
  • 2
  • 46
  • 42
1

I think you could count Mozilla XULRunner as "app framework". It's more like embedded Firefox than framework, though.

https://developer.mozilla.org/en/xulrunner

It's much much more complex and powerful than Adobe AIR or Titanium.

Mikko Ohtamaa
  • 82,057
  • 50
  • 264
  • 435
  • You sure can. We created and open-sourced [Webapp XUL Wrapper](https://github.com/neam/webapp-xul-wrapper) a while ago, and it works great for publishing HTML5 applications as desktop apps. It is "a XUL-based wrapper and build scripts for packaging a webapp into distributable bundles for Mac, Windows, and Linux." – Motin Jan 30 '14 at 11:06