allows you to write Cocoa programs in Javascript (via JavascriptCore, WebKit's Javascript engine)

works on x86 and PPC and requires Leopard (an uptodate Leopard, 10.5.2 from back then crashes)

is open source !

Syntax

Only dots ! Everyone loves dots !

NSWorkspace.sharedWorkspace.activeApplication.NSApplicationName



An instance command to replace alloc.init(…)

NSButton.instance({ withFrame:NSMakeRect(0, 0, 100, 40) })



command to replace More dots ! Did you know that a message like setTitle: is really a dot trapped in a closet, begging to come out ? // Changes window title window.title = 'Hello !'



is really a dot trapped in a closet, begging to come out ? A split call syntax, to almost have ObjC-like calls — if you use jQuery you'll feel right at home this.perform({ selector:'printSomeDots:', withObject:null, afterDelay:0 })



Some JS-like manipulation of arrays and dicts : myNSMutableDictionary.mykey = 'value' myNSMutableArray[5] = 'hello world !' But Javascript arrays and hashes are not (yet) converted to NSArray and NSDictionary.

Meaning object.wantsADictionary({fontSize:14}) will fail.

...



And of course the Javascript benefit of ending your lines without semicolon barbwire.

Samples

There's only one :) — A Core Animation process viewer.



Get it

Download it from its homepage JSCocoa home

Or from its source home Google source page for JSCocoa