Stuff for JavaScript

JavaScript (a.k.a. ECMAScript) is one of the world's most misunderstood programming languages. This is probably because it started out in a very hostile environment - web browsers - and portability across web browsers was, at the time, quite poor. Nowadays JavaScript itself is very portable, and the incompatibilities have moved into the browser parts on which JavaScript typically operates: HTML DOM elements. Nonetheless, JavaScript is making a comeback as a powerful part of the AJAX programming idiom. This page is my little corner for evangelizing the language.


v8-juice is a library for extending the Google v8 JavaScript engine. It is similar in spirit to SpiderApe (see below), but targets a different JS engine.


SpiderApe is a C++ library based on top of Mozilla's SpiderMonkey JavaScript Engine. SpiderMonkey is the only freely-available JS engine for C/C++ developers, but it is unfortunately quite poorly documented and it can be difficult to work with. SpiderApe (an "ape" being a "bigger, stronger monkey"), is a wrapper around some of the more tedious-to-use SpiderMonkey parts, making it really simple to integrate the JS engine into C++ applications and libraries. Its most useful features include easy-to-use, type-safe conversion between JS and C++ data types, plus the ability to add new JS functionality (functions and classes) via plugins (on Unix-like platforms, anyway).

Javascript source code packers

There are several JS source code packers available on the net: Note that the JS source code packing process may remove the license text from a JS script, which may violate the code's license. It is considered good manners to re-insert the license text back into the packed code.


jQuery is an impressive JS toolkit for working with HTML DOMs. You can find out more about it, as well as download my plugins for jQuery, on my jQuery pages.