Tuesday, December 23, 2025

MicroQuickJS project is now open and runs JavaScript using only 10KB of RAM.

 

MicroQuickJS project is now open and runs JavaScript using only 10KB of RAM.
Fabrice Bellard, the legendary French programmer who created important projects such as FFmpeg, QEMU, and Tiny C Compiler, has launched a new project, MicroQuickJS (mjs), a JavaScript engine focused on extreme memory efficiency. The binary size is less than 100KB and uses only 10KB of RAM during runtime.

Bellard previously created QuickJS (qjs) in 2019, also aiming for a lightweight JavaScript engine, but qjs had a binary size of 387KB. This time, mjs changes the garbage collector to run in less RAM and doesn't use the CPU stack, while not supporting all JavaScript features; for example, it primarily supports ES5 strict mode.

The entire code uses almost no external APIs, including malloc() and free(). Running the code requires memory allocation, and the engine uses this memory.

Salvatore Sanfilippo, the creator of Redis, commented that if mjs had been available in 2010, he would have used it in Redis instead of Lua because of its similar characteristics: small size, speed, and use of standard C language.

No comments:

Post a Comment