You are currently viewing a snapshot of taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to, please file a bug.

JavaScript Debugging

NEWSFLASH... The JS debugger for Mozilla is: Venkman.


The JavaScript Debugging project includes a cross platform debugging support module for the Netscape JavaScript engine, a Java-based GUI debugger for JavaScript, a JavaScript logging tool, and a console debugger. Work is beginning on a new debugger, written in JavaScript, for the XPFE/NGLayout Mozilla.


  • a native library in js/jsd which exposes a C language interface. This library wraps debugging functionality exposed by the core engine and manages much of the bookkeeping. This code is used in mozilla and can also be used in the standalone JavaScript shell (js/src/js.c) or when the core engine is used elsewhere.
  • native code in js/jsd/java to reflect that C language interface into Java. This implements the native Java methods of js/jsdj/classes/netscape/jsdebug which itself implements the Jave interface for JavaScript debugging shipped with Navigator 4.x in the Java package netscape.jsdebug and used by the Netscape JavaScript Debugger - a tested compiled version of which can be freely downloaded at
  • a standalone console debugger written in JavaScript in js/jsd/jsdb. This system exposes the JSD interface into JavaScript and implements a dynamicly modifiable and self-debugging debugger in JavaScript.
  • the entire tree under js/jsdj holds various Java-based pieces of the debugging system. This includes the buildable source to the Netscape JavaScript Debugger in js/jsdj/classes/com/netscape/jsdebugging/ifcui, a test system, JSLogger (an applet to track and log JavaScript activity in the client), a Java-based console debugger, and other stuff.

Getting and building the code

The sources are available via CVS.

Check out the JavaScript engine and all the debugging source using:
    cvs co -P mozilla/js

Instructions for building are in:


John Bandhauer