73

I know there's JScript.NET, but it isn't the same as the JavaScript we know from the web.

Does anyone know if there are any JavaScript based platforms/compilers for desktop development? Most specifically Windows desktop development.

nicael
  • 18,550
  • 13
  • 57
  • 90
Chris Pietschmann
  • 29,502
  • 35
  • 121
  • 166

18 Answers18

26

There is XULRunner, which let's you build GUI apps like Firefox using JavaScript and XUL. It has a lot of extension to JavaScript though, using XPCOM. They also offer Prism which let's you build web apps that work offline, sort of like AIR. Yahoo uses it for their Zimbra email desktop client.

Zach
  • 24,496
  • 9
  • 43
  • 50
  • Instead of Prism you could use Google Chrome and then you could use the built in Google Gears support for offline storage. – Sam Hasler Sep 20 '08 at 22:32
  • I was so excited to find XULRunner a couple of years ago, but then found out that it doesn't support any of the abilities firefox has for DOM manipulation and other stuff I'd expected to get (I don't remember what else it didn't have, maybe AJAX?) – Madd0g Dec 13 '11 at 18:09
25

Yes, with Adobe AIR. Adobe AIR lets you make desktop applications with Javascript, Flex, or Flash.

Justin Poliey
  • 16,289
  • 7
  • 37
  • 48
25

Looks like there are 3 types of html5-desktop app

SDK

Browser runtime

Node.js based

hkk
  • 2,069
  • 1
  • 23
  • 48
gustavodiazjaimes
  • 2,441
  • 1
  • 19
  • 14
14

Windows 8 allows for Windows Store Apps to be written in HTML5/JavaScript.

Chris Pietschmann
  • 29,502
  • 35
  • 121
  • 166
9

"node-webkit is an app runtime based on Chromium and node.js. You can write native apps in HTML and Javascript with node-webkit. It also lets you call Node.js modules directly from the DOM..."

Michael Allan Jackson
  • 4,217
  • 3
  • 35
  • 45
  • 1
    Node-webkit looks really interesting: it allows you to access node.js libraries directly from a web browser, all in one .html file. – Anderson Green Nov 15 '12 at 16:14
8

There's Titanium Developer which is similar to Adobe AIR (html+css+javascript), but does not require a framework to be pre-installed.

Muxa
  • 5,563
  • 6
  • 46
  • 56
7

You can make a desktop application using XML and javascript (and/or VBS) using the Windows Script host.

The trick is to save your XML file with a .hta extension. See this reference.

dsm
  • 10,263
  • 1
  • 38
  • 72
6

There's SpiderMonkey, a JavaScript engine written in C and Rhino, an implementation of JavaScript in Java.

David G
  • 6,249
  • 4
  • 33
  • 31
5

Try AppJS, It is an SDK on top of NodeJS and Chromium Embedded Framework. You can build desktop apps easily with the web technologies.

Ken Herbert
  • 5,205
  • 5
  • 28
  • 37
Morteza Milani
  • 1,197
  • 3
  • 19
  • 30
3

Google Gears. There's also Mozilla's XUL, but it's too bit complicated, IMHO (albeit extremely powerful).

Mike Hordecki
  • 92,113
  • 3
  • 26
  • 27
3

Google has a new interesting technology going on. It's in a quite early stage but works good already. It's called Packaged Apps and is using Chrome as a runtime and works on both Pc and Mac. Have a look at http://developer.chrome.com/apps/about_apps.html

arpo
  • 1,831
  • 2
  • 27
  • 48
  • 1
    This looks very similar to node-webkit (which allows node.js libraries to be used in HTML documents, just like browser-side Javascript.) – Anderson Green Nov 28 '12 at 01:36
  • Yes Node-Webkit looks very promising. Started looking in to it some days ago. Have a look: [link](https://github.com/rogerwang/node-webkit) – arpo Nov 28 '12 at 07:43
  • I'm familiar with node-webkit already, but does "Packaged Apps" allow node.js functions to be used in the HTML DOM (like node-webkit?) – Anderson Green Nov 29 '12 at 02:11
  • No it doesn't as far as I know. I found this project on Github but it's not much there yet. [link](https://github.com/arunoda/chrome-node). This might be something too, haven't checked yet. [link](http://nodejs.davidherron.com/2012/10/chrome-apps-office-hours-nodejs-in.html) – arpo Nov 29 '12 at 08:04
  • See also my answer here: [link](http://stackoverflow.com/questions/12490825/save-without-prompt-in-a-chrome-packaged-app/13623999#13623999) – arpo Nov 29 '12 at 10:48
  • It is not recommended to use Chrome packaged apps anymore -- see http://blog.chromium.org/2016/08/from-chrome-apps-to-web.html – thdoan Sep 02 '16 at 07:20
2

Another option I didn't see mentioned is for Cocoa (Mac OS X, iPhone OS) applications you can use a web view (embedded WebKit) as the application UI.

eyelidlessness
  • 62,413
  • 11
  • 90
  • 94
2

Electron, originally Atom Shell, allows applications to be written in web technologies (HTML, JS, CSS) and run on any of the major operating systems, including Windows.

Hatchet
  • 5,320
  • 1
  • 30
  • 42
2

You can try JavaLikeScript, it does not provide the same native/root objects that a web browser but it has network and user interface features.

jls
  • 21
  • 1
1

There's Yahoo's Konfabulator for the windows desktop.

Kris
  • 6,058
  • 2
  • 19
  • 16
1

Script# has extensions for Vista Gadgets.

http://projects.nikhilk.net/ScriptSharp/

mattlant
  • 15,384
  • 4
  • 34
  • 44
0

Here are some JSOS (Javascript Operating Systems), sort-of still need a browser.

http://fractalbrain.net/ /* The Best. */

http://cometdesktop.com/ /* Alright. */

http://skylightproject.com/ /* Worst */

a_m0d
  • 12,034
  • 15
  • 57
  • 79
JamesM-SiteGen
  • 802
  • 2
  • 11
  • 26
0

I answered with node-webkit above, but I recently saw a presentation on Tint2. It seems to address security concerns with node-webkit and looks promising.

Michael Allan Jackson
  • 4,217
  • 3
  • 35
  • 45