How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.
mQuickjs is a compact JavaScript engine designed for memory-constrained devices, such as microcontrollers, requiring as little as 10 KB of RAM and 100 KB of ROM. It achieves this through a fixed-buffer memory allocation scheme that avoids system heap usage, a compacting tracing garbage collector that eliminates fragmentation, and a ROM-embedded standard library that reduces both memory footprint and startup time. The engine compiles JavaScript source into portable bytecode…
The main features of bellard/mquickjs are: Code Execution Runtimes, Lightweight Scripting Engines, Fixed-Buffer Runtime Contexts, Source-to-Bytecode Compilers, JavaScript Engine Embedding, Native Class Mappings, Compacting Garbage Collectors, Precompilation.
Projects with overlapping indexed features include: jerryscript-project/jerryscript — JerryScript is a lightweight, ECMAScript-compliant JavaScript engine and bytecode compiler designed for… svaarala/duktape — Duktape is an embeddable JavaScript engine and portable scripting runtime designed for integration into C and C++… quickjs-ng/quickjs — QuickJS is a lightweight, embeddable ECMAScript runtime that executes JavaScript programs conforming to the latest… dop251/goja — Goja is a JavaScript engine and ECMAScript compliant interpreter implemented entirely in Go. It serves as an embedded… adafruit/circuitpython — CircuitPython is a specialized derivative of the MicroPython runtime designed as an embedded Python interpreter for… ultralight-ux/ultralight — Ultralight is a GPU-accelerated HTML UI renderer and C++ framework designed for embedding web interfaces within native…
JerryScript is a lightweight, ECMAScript-compliant JavaScript engine and bytecode compiler designed for resource-constrained devices. It serves as an embedded interpreter and IoT scripting runtime, enabling the execution of JavaScript code within native C applications on hardware with limited memory. The project differentiates itself through a focus on low-memory runtime management, utilizing bytecode precompilation and pre-compiled state snapshots to reduce startup time and memory overhead. It features a C-binding native bridge for bidirectional communication between native code and scripts,
Duktape is an embeddable JavaScript engine and portable scripting runtime designed for integration into C and C++ applications. It functions as a lightweight ECMAScript runtime that provides a C-JavaScript bridge for exchanging data and invoking functions between native code and a script execution environment. The engine includes an ECMAScript bytecode compiler that allows for the serialization and caching of compiled functions to disk to reduce application startup time. It organizes script dependencies using a CommonJS-compliant module loader. The runtime covers a variety of capabilities in
QuickJS is a lightweight, embeddable ECMAScript runtime that executes JavaScript programs conforming to the latest specification. It is designed as a compact, standards-compliant JavaScript engine suitable for resource-constrained environments and embedded systems, available both as prebuilt binaries and as source code that can be compiled for custom integration. The engine distinguishes itself through a minimal runtime footprint achieved by a single-pass compiler that produces compact bytecode, executed on a stack-based virtual machine. Memory management uses reference-counting garbage colle
CircuitPython is a specialized derivative of the MicroPython runtime designed as an embedded Python interpreter for microcontrollers. It provides a high-level language environment that allows for direct hardware access through a dedicated hardware abstraction layer and a Python microcontroller runtime. The project is distinguished by firmware that exposes the microcontroller as a native USB mass storage device. This allows users to edit code directly on the device as if it were a removable drive, eliminating the need for specialized flashing tools and enabling filesystem-triggered code reload