SpiderMonkey

SpiderMonkey is Mozilla's JavaScript engine written in C/C++. It is used in various Mozilla products, including Firefox, and is available under the MPL2.

SpiderMonkey 24 is the most recent standalone source code release. It implements JavaScript 1.8.5, and it is largely the same engine that shipped with Firefox 24. Full source code is available here: https://ftp.mozilla.org/pub/mozilla.org/js/mozjs-24.2.0.tar.bz2 (SHA1 checksum: ce779081cc11bd0c871c6f303fc4a0091cf4fe66).

The next release will be SpiderMonkey 31, around July 2014.

Documentation

General

SpiderMonkey Build Documentation
How to get SpiderMonkey source code, build it, and run the test suite.
Introduction to the JavaScript shell
How to get, build, and use the JavaScript shell.
Running Automated JavaScript Tests
How to run the JavaScript test suites.
Creating JavaScript tests
How to add tests to the JavaScript test suites.
New to SpiderMonkey
A guide to hacking on SpiderMonkey.
Setting up CDT to work on SpiderMonkey
How to configure Eclipse to work on the SpiderMonkey code.

JSAPI

JSAPI User Guide
This guide provides an overview of SpiderMonkey and describes how you can embed engine calls in your applications to make them JavaScript-aware.
JSAPI Phrasebook
Shows the JSAPI translation of some commonly used JavaScript expressions and statements.
JSAPI Reference
SpiderMonkey API reference.
GC Rooting Guide
Guide on how to write code compatible with the Generational GC in SpiderMonkey.
JS Debugger API Guide
A user guide to the new JavaScript Debugger API introduced in Gecko 8.0 (Firefox 8.0 / Thunderbird 8.0 / SeaMonkey 2.5).
JS Debugger API Reference
API reference for the Debugger object introduced in SpiderMonkey 1.8.6, which corresponds to Gecko 8.0 (Firefox 8.0 / Thunderbird 8.0 / SeaMonkey 2.5).

Tips, tricks and philosophy

Future Directions
Future directions for functionality, design, and coding practices.
How to embed the JavaScript engine
A bare-bones tutorial about embedding SpiderMonkey.
SpiderMonkey Internals
A design overview and a file-by-file walkthrough of the implementation.
Bytecode Reference
SpiderMonkey bytecode reference.
SpiderMonkey Internals: GC
Separate internals article on the GC
SpiderMonkey Internals: Thread Safety
How SpiderMonkey's request model works inside
SpiderMonkey Internals: Hacking Tips
Collection of helpful tips & tools for hacking on the engine

Community

Join the user mailing list:

Join the internals mailing list:

Questions? Ask on IRC!

See also SpiderMonkey tag on StackOverflow.

Bugs? File them!

 

Document Tags and Contributors

Contributors to this page: sstangl
Última atualização por: sstangl,