cesanta/elk
A low footprint JavaScript engine for embedded systems observed · 2026-08-28
Health v2 · maintenance only
55/100
- Activity 72
- Release rhythm 8
- Longevity 100
Flags: no_license
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 2522
- days_rel: n/a
- days_push: 168
- n_releases_24m: 0
Adoption not part of the score
1900 stars · 98 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Elk is a tiny embeddable JavaScript engine written in C that implements a small subset of ES6, designed for microcontrollers with footprints around 20KB flash and ~100 bytes RAM. It has no standard library; JS code orchestrates functionality imported from C/C++ firmware.
Use cases
- run JavaScript on an Arduino or ESP32 microcontroller
- let customers customise device firmware with small JS scripts
- embed a scripting engine in a C project without malloc
- add JS customisation hooks to embedded firmware
- evaluate simple JS expressions in a memory-constrained environment
When to choose
- you need a minimal JS interpreter on 8/32-bit microcontrollers with very little RAM
- you want to expose C functions to user-written JS scripts
- you need zero dependencies and a copy-two-files integration
When to avoid
- you need a full ES6+ runtime or standard library
- you need high-performance JIT execution
- you need a general-purpose server-side JS environment like Node.js
Facets
library · maturity active
interpreter programming-language embedded programming-languages embedded-systems developer-tools embedded cross-platform c cpp javascript-engine microcontroller es6-subset no-malloc tiny-footprint scripting
1 source
- readme: https://github.com/cesanta/elk · fetched 2026-08-28 · 8e1d472ee453
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| cesanta/elk | main | 55 |
For agents
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem