MicroQuickJS (MQuickJS) is a compact JavaScript engine designed specifically for embedded systems where memory and storage are extremely limited. Its primary goal is to compile and run JavaScript programs using minimal RAM, making it suitable for microcontrollers and constrained devices that cannot host a full-featured runtime. The engine is intentionally small in ROM footprint while still providing practical performance comparable to lightweight desktop-grade embeddable engines in its class. To stay small and predictable, it supports a subset of JavaScript close to ES5 rather than modern ECMAScript features, which keeps implementation complexity and runtime overhead lower. It also offers a stricter mode that forbids certain error-prone or inefficient constructs, encouraging safer and more deterministic code in embedded environments.
Features
- JavaScript engine optimized for embedded targets
- Very low RAM usage suitable for constrained devices
- Small ROM footprint designed for microcontroller-class deployments
- Subset-of-JavaScript approach aligned roughly with ES5-era capabilities
- Optional stricter mode to forbid risky or inefficient constructs
- Performance tuned to remain competitive among lightweight embeddable runtimes