Boa | |
Logo Size: | 64px |
Developer: | Boa Developers |
Author: | Jason Williams |
Latest Release Version: | v0.19[1] / |
Programming Language: | Rust[2] |
Platform: | x86-64, 32-bit ARM, AArch64 |
Genre: | JavaScript and WebAssembly engine |
License: | MIT |
Boa is an open-source JavaScript engine written in Rust. Boa was introduced at JSConf EU 2019 by Jason Williams.[3] [4]
Williams created Boa in 2017 after working on Servo and being inspired by the "written from scratch" CSS engine.[5] He was eager to work on a JavaScript engine using Rust to learn more about how JavaScript implementations work, since then the project has had over 100 contributors.[6] Overtime the engine gained more prominent features such as bytecode compilation,[7] better conformance to the specification and ergonomic API design.
Boa is an open-source implementation of a JavaScript execution engine. The project is developed as a Rust library for embedding the JavaScript engine in Rust applications. Additionally, the authors of Boa provide a command-line interface (CLI) for users to interact with Boa as standalone JavaScript interpreter accessible from a command line.[8]
Boa follows the common interpreter design which approximately consists of a lexer, parser, compiler and bytecode interpreter
Boa implements the ECMA-262 specification (ECMAScript). As of 6 September 2024 Boa has 88% conformance to Test262[9]