txiki.js
A tiny JavaScript runtime (by saghul)
mjs
Embedded JavaScript engine for C/C++ (by cesanta)
txiki.js | mjs | |
---|---|---|
8 | 4 | |
2,337 | 1,816 | |
- | 0.5% | |
9.1 | 0.0 | |
9 days ago | 4 months ago | |
C | C | |
MIT License | GNU General Public License v3.0 or later |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
txiki.js
Posts with mentions or reviews of txiki.js.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-12-10.
-
A list of JavaScript engines, runtimes, interpreters
txiki.js
-
JavaScript Standard Input/Output: Unspecified
// https://github.com/denoland/deno/discussions/17236#discussioncomment-4566134 // https://github.com/saghul/txiki.js/blob/master/src/js/core/tjs/eval-stdin.js async function readFullAsync(length, buffer = new Uint8Array(65536)) { const data = []; while (data.length < length) { const input = await open("/dev/stdin"); let { bytesRead } = await input.read({ buffer }); await input.close(); if (bytesRead === 0) { break; } data.push(...buffer.subarray(0, bytesRead)); } return new Uint8Array(data); }
- Node.js fetch() vs. Deno fetch(): Implementation details...
-
How to compile serveTls for import into QuickJS?
I've only dabbled with the shared libraries once, with the help of the owner of the lnked repository. I wound up solving the issue adjusting the code I was working on https://github.com/saghul/txiki.js/issues/294.
-
C++ to C string concatenation
I have written the same code in C++ https://github.com/guest271314/captureSystemAudio/blob/master/native_messaging/capture_system_audio/capture_system_audio.cpp, Python https://github.com/guest271314/captureSystemAudio/blob/master/native_messaging/capture_system_audio/capture_system_audio.py, and QuickJS (C source code) https://github.com/saghul/txiki.js/issues/294. QuickJS is the only implementation that winds up clipping the end of real-time audio capture.
-
QuickJS JavaScript Engine – Fabrice Bellard
QuickJS is awesome, simple to use and very easy to integrate.
Over the past few years I slowly built a small JS runtime using QuickJS as the engine and libuv as the platform layer, amongst other things, in case anyone wants to take a look: https://github.com/saghul/txiki.js
- GitHub - saghul/txiki.js: The tiny JavaScript runtime built with QuickJS, libuv
- GitHub - saghul/txiki.js: The tiny JavaScript runtime built with QuickJS, libuv and ❤️
mjs
Posts with mentions or reviews of mjs.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-12-10.
-
A list of JavaScript engines, runtimes, interpreters
mjs
-
TypeScript is the Only Programming Language you Need: TypeScript Everywhere
I hear you loud and clear.
-
Elk: A low footprint JavaScript engine for embedded systems
This implementation is nuts. A decent chunk (but still very small subset) of ES5 in under 1400 lines of very readable C code. It includes a mark-and-sweep GC and an FFI.
It doesn't have an AST or a bytecode VM. It just interprets directly off of source code.
Take a look: https://github.com/cesanta/elk/blob/master/elk.c.
This implementation really sets a new bar for me in terms of compact-but-readable language implementations.
Separately, this isn't even Cesanta's only embedded JavaScript implementation. They also have: https://github.com/cesanta/mjs. This implementation is a bit more complete and is much bigger.
-
What is your programming stack, as well encryption with ESP32?
In the past I've programmed with ESP8266 with Mongoose OS using mJS - https://github.com/cesanta/mjs but it has on 1.5K GitHub stars and I assume there are other alternative as well for Python language