HeadlinesBriefing favicon HeadlinesBriefing.com

UEFI JavaScript Bindings: Bootloaders in JavaScript

Hacker News: Front Page •
×

A developer has created UEFI Bindings for JavaScript, a proof-of-concept project that enables JavaScript to interact directly with UEFI firmware. The project, called Promethee, loads a script.js file from the boot volume and executes it as a bootloader. This means developers can leverage UEFI services through JavaScript code.

Promethee uses Duktape as its JavaScript engine and requires Node.js for tooling. The build process is freestanding, providing only minimal libc stubs. The project includes a simple example demonstrating graphics output through UEFI's GraphicsOutput protocol, filling a 200x120 pixel area with red color. Developers can fetch dependencies with ./get-deps and run the code in QEMU using make run.

The project's name references the mythological Prometheus, who stole fire from the gods and gave it to humanity. The README suggests that if this makes you grin, you're probably holding the torch. This unconventional approach to bootloader development could open new possibilities for firmware development, allowing developers to use JavaScript's flexibility and ecosystem for low-level system tasks traditionally handled by C or assembly code.