Tools Used

IDE: Eclipse

Though Eclipse is primarily known as a Java IDE, its openness and extensiblity make it effective for writing code in other languages as well (assuming an appropriate plugin exists). If nothing else, Eclipse's GUI provides an interface to CVS and Ant that is easier to use than their command-line counterparts.

Editor: Colorer Plugin for Eclipse

Eclipse Colorer is an effective syntax highlighting plugin for Eclipse. For Google Dominoes, it was helpful in coloring XUL, XML, HTML, and JavaScript files, as well as matching braces and angle brackets. Further, it provided the option of using spaces to replace tabs a feature that the default Eclipse 3.0 text editor (surprisingly) does not offer.

Build Tool: Ant

Although creating a Mozilla/Firefox extension has nothing to do with Java (though it does require building a jar file), Ant is an appropriate build tool to use because of its cross-platform support.

Version Control: CVS

CVS seems to work well enough, so there has been no motivation to replace it with Subversion or RCS yet. Further, Eclipse's built-in support for CVS increases the attraction in using it over other version control systems.

Project Manager: Maven

Maven generated the HTML for this web site from a collection of XML files. From its web site, Maven appears to be useful for automating other tasks as well; however, its primary role in the Google Dominoes project is to generate pretty HTML pages.