Elk is a tiny embeddable JavaScript engine that implements a small but usable subset of ES6.
It is designed for microcontroller development. Instead of writing firmware code entirely in C/C++, Elk allows to add JavaScript customisations to the firmware developed in C.
Elk’s approach is different from other scripting environments like micropython, which provide a complete JS API for everything. Elk is completely bare, it does not even have a standard library. All required functionality is supposed to be imported from C/C++ firmware, and JS code simply orchestrates things. That leaves Elk very minimal and tunable.
This is free and open source software.
Key Features
- Zero dependencies. Builds cleanly by ISO C or ISO C++ compilers.
- Easy to embed: just copy elk.c and elk.h to your source tree.
- Small and simple embedding API.
- Does not use malloc. Operates with a given memory buffer only.
- Small footprint: about 20KB on flash/disk, about 100 bytes RAM for core VM.
- No bytecode. Interprets JS code directly.
- Cross platform. Works anywhere from 8-bit microcontrollers to 64-bit servers.
Website: github.com/cesanta/elk
Support:
Developer: Cesanta Software Limited
License: GNU Affero General Public License v3.0
Elk is written in C. Learn C with our recommended free books and free tutorials.
Related Software
| JavaScript Engines | |
|---|---|
| V8 | High-performance JavaScript and WebAssembly engine |
| SpiderMonkey | JavaScript and WebAssembly Engine, used in Firefox, Servo and more |
| QuickJS | Small and embeddable Javascript engine |
| Hermes | JavaScript engine optimized for React Native |
| Rhino | JavaScript in Java |
| JerryScript | JavaScript engine for the Internet of Things |
| GraalJS | ECMAScript-compliant JavaScript engine |
| Escargot | Lightweight JavaScript engine |
| Duktape | Embeddable JavaScript engine, focusing on portability and compact footprint |
| Elk | Tiny embeddable JavaScript engine |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.