Tamarin is a JavaScript engine written in C++. It currently implements Adobe ActionScript™ 3 (a superset of ECMAScript Edition 3) and is embedded within the Adobe® Flash® Player versions 9 and later. Tamarin's jit-compiler, NanoJIT, is also used in TraceMonkey ergo SpiderMonkey, which is Mozilla’s JavaScript engine in Firefox.

Tamarin is available under the MPL/GPL/LGPL tri-license.


Release Tracking
Information on current, past, and upcoming releases of Tamarin.


Adobe ActionScript Virtual Machine 2 (AVM2) Overview (PDF, 400K)
The instructions, architecture, and file format supported by the AVM2. See also the possible errata.
Tamarin Build Documentation
How to get, build, and use Tamarin.
Tamarin Build System Documentation
Documentation on how the Tamarin build system works and how to modify.
Tamarin commit hook
Instructions for installing and using the mercurial hook for Tamarin.
Tamarin Acceptance Testing
Instructions on how to validate changes to the Tamarin source code.
Tamarin pages at wiki.mozilla.org
More documentation.
MMgc overview
An overview of the Tamarin garbage collector.
Nanojit LIR
In Nanojit, LIR is the source language for compilation to machine code.
Tamarin strings documentation
The implementation of Tamarin strings has changed. This page is a how-to about the changes, and what can be done to adapt source code to the changes.
Tamarin doxygen documentation
Documentation for the latest release.

Get Involved!

Tamarin on mozilla.org