Desktop application development with Javascript and HTML
Asked Answered
H

5

14

I am looking for Titanium Appcelerator alternatives for Desktop application development with HTML and JavaScript. I want to convert a web app to a desktop application. Hence, there will be a lot of server interaction. Appcelerator was a good choice, but it looks like the company is no longer interested in the Desktop SDK. Also, ajax request from Appcelerator does not retain cookies.

I read that Adobe Air can be used for desktop app development, but I don't want to use flash.

How good is XULRunner? Will it allow features like Growl notificaiton and creating tray icons?

Will I be able to develop applications using mostly Javascript and HTML in Qt?

Heraclid answered 5/1, 2011 at 6:7 Comment(1)
possible duplicate of Framework for (HTML + JS) Desktop ClientDialect
M
9

I started looking into Titanium for desktop dev. I liked the concept but not the implementation. I then stumbled upon chromiumembedded and have been mostly very happy with it. It's basically a web browser control based on chromium. http://code.google.com/p/chromiumembedded/

It's written in C++ so you can do all the low level OS stuff you want(Growl, tray icons, local file access, com ports, etc) in your container app, and then all the application logic and gui in html/javascript. It allows you to intercept any http request to either serve local resources or perform some custom action. For example, a request to http://localapp.com/SetTrayIconState?state=active could be intercepted by the container and then call the C++ function to update the tray icon.

It also allows you to create functions that can be called directly from javascript.

My biggest challenge has been debuging. It's very difficult to debug javascript directly in CEF. There's no support for anything like Firebug that I am aware of.

Maryjanemaryjo answered 5/1, 2011 at 6:40 Comment(1)
How is chromiumembedded memory usage?Brine
B
2

Appjs (appjs.org) looks very promising.

Blowtube answered 22/12, 2012 at 14:8 Comment(1)
Looks like this project might have died out? The appjs.org site is gone, and although it's still on GitHub it looks like development stopped about 5 months ago...Cappuccino
G
1

You could also check Bowline which is another alternative: http://bowlineapp.com/.

Gallenz answered 9/1, 2011 at 17:28 Comment(1)
I was looking for JS based platform. Looks like Bowline needs Ruby.Heraclid
C
1

Although it's not officially intended for general-purpose use, a number of people have had success using brackets-shell for HTML/JS desktop apps. It embeds Chromium (CEF) and adds APIs for menu bar management and file IO. It also embeds an instance of Node.js so you get access to all its APIs for launching processes, etc. It's MIT-licensed and available for Mac & Win, with a Linux version currently making rapid progress.

As I mentioned, it's not officially a general-purpose app shell, but someone wrote a detailed blog post about how to customize brackets-shell for your own uses.

I notice that the other answer about Titanum says CEF is hard to debug. I'm not sure if that's true in Titanium, but in brackets-shell it's easy to debug JS – you just open http://localhost:9234/ to load a full instance of the Chrome Developer Tools (including breakpoints, profiling, etc.).

Cappuccino answered 26/8, 2013 at 3:4 Comment(1)
I looked into the blog post and finally picked a similar opensource node-webkit: github.com/rogerwang/node-webkit . Its demos looks promising to me: github.com/zcbenz/nw-sample-appsSwingle
L
0

TideSDK is a continuation of the old Titanium desktop http://www.tidesdk.org/

Localize answered 28/3, 2014 at 13:54 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.