quickjs
pyduktape
quickjs | pyduktape | |
---|---|---|
4 | 1 | |
168 | 81 | |
- | - | |
5.2 | 0.0 | |
about 1 month ago | 11 months ago | |
Python | Python | |
MIT License | GNU General Public License v3.0 only |
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.
quickjs
-
AWS Introduces a New JavaScript Runtime for Lambda
You can use it as en embedded scripting language within Python.
[1] https://github.com/PetterS/quickjs
- YouTube-dl has a JavaScript interpreter written in 870 lines of Python
-
Why are the upcoming qutebrowser extensions only “inspired” by the WebExtensions API?
You could run the webextention javascript in quickjs.
-
Web Browser Engineering
I was interested to see that this uses the DukPy wrapper around Duktape for the JavaScript interpreter: https://browser.engineering/scripts.html
This made me start digging into whether this was considered a "safe" way of executing untrusted JavaScript in a sandbox.
its not completely clear to me if DukPy currently attempts safe evaluation - it's missing options for setting time or memory limits on executed code for example: https://github.com/amol-/dukpy
There's a QuickJS Python wrapper here which offers those limits: https://github.com/PetterS/quickjs
I'm pretty paranoid though any time it comes to security and dependencies written in C, so I'd love to see a Python wrapper around a JavaScript engine that has safe sandbox execution as a key goal plus an extensive track record to back it up!
pyduktape
What are some alternatives?
dukpy - Simple JavaScript interpreter for Python
libv8-node - Package libv8 from Node
PyMiniRacer - PyMiniRacer is a V8 bridge in Python.
hbctool - Hermes Bytecode Reverse Engineering Tool (Assemble/Disassemble Hermes Bytecode)
mini_racer - Minimal embedded v8
InsideReCaptcha - Reverse-engineering the new “captchaless” ReCaptcha system...
tube-get - A tube-site downloader
awesome-python - An opinionated list of awesome Python frameworks, libraries, software and resources.
yt-dlp - A feature-rich command-line audio/video downloader