Skip to main content

Python binding for QuickJS using CFFI

Project description

quickjs-cffi

PyPI Supported Versions PyPI Downloads Github Downloads License: MIT

Python binding for QuickJS Javascript Engine using cffi. Supports x86_64 and aarch64 platforms.

NOTE: Currently supported operating system is Linux (manylinux_2_28 and musllinux_1_2)

Build

python -m venv venv
source venv/bin/activate
pip install poetry
poetry install --all-extras

Demos

First setup temp node project, so node modules can be installed and used inside QuickJS examples:

npm init -y
npm install esbuild

Huge number of isoloted JavaScript contexts:

python -B examples/demo_contexts.py

Lodash example:

npm install lodash
python -B examples/demo_lodash.py

Handlebas example:

npm install handlebars
python -B examples/demo_handlebars.py

Yjs example:

npm install yjs
esbuild node_modules/yjs/src/index.js --bundle --outfile=examples/yjs.js --format=iife --loader:.ts=ts --global-name="Y"
python -B examples/demo_yjs.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

quickjs_cffi-0.1.2-pp310-pypy310_pp73-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

quickjs_cffi-0.1.2-pp310-pypy310_pp73-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

quickjs_cffi-0.1.2-cp313-cp313-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

quickjs_cffi-0.1.2-cp313-cp313-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

quickjs_cffi-0.1.2-cp313-cp313-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

quickjs_cffi-0.1.2-cp313-cp313-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

quickjs_cffi-0.1.2-cp312-cp312-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

quickjs_cffi-0.1.2-cp312-cp312-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

quickjs_cffi-0.1.2-cp312-cp312-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

quickjs_cffi-0.1.2-cp312-cp312-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

quickjs_cffi-0.1.2-cp311-cp311-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

quickjs_cffi-0.1.2-cp311-cp311-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

quickjs_cffi-0.1.2-cp311-cp311-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

quickjs_cffi-0.1.2-cp311-cp311-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

quickjs_cffi-0.1.2-cp310-cp310-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

quickjs_cffi-0.1.2-cp310-cp310-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

quickjs_cffi-0.1.2-cp310-cp310-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

quickjs_cffi-0.1.2-cp310-cp310-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

File details

Details for the file quickjs_cffi-0.1.2-pp310-pypy310_pp73-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-pp310-pypy310_pp73-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 444c59dc4216941e5302c962731592e7074818d0017b4fe6755486eceb58ede4
MD5 c59ba7e615a0a32ee20b0dee79e8cf18
BLAKE2b-256 5b52081ace387da5cf4d417f91d8ffb1747a573bca3f9aa5a28237d6ed2888d3

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-pp310-pypy310_pp73-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-pp310-pypy310_pp73-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 58b67ec9860445a399aa438c19af6734fb31af3b5eeea946a129d470fc0055da
MD5 020c70001fb21977e39c3cdf098e334f
BLAKE2b-256 7b14a02ff1683aed1fa27e7aef6725a4289ad1f7dd6d539add2ff542103bb389

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b74a38e4e9f060a0b39910191db1afec6d5c10266835d5f466b65bf5e12ae5cf
MD5 39eaf850511b541d5c4da11a778aea59
BLAKE2b-256 27d5f4f1b00fbf9c927ea3dd6f801802490738f8f66ac600d15712fc2d749ae2

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a9662a6a74310af4ba1ff7590f369af6fb79f8fb374a9d356081f82df925bfc8
MD5 77330d0245bf066860386766d2564b23
BLAKE2b-256 1a778a6f7b8def0f1513048bfef9f5ebafa0be6a631850118c56e7400b35fb19

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp313-cp313-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp313-cp313-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 01ee2738487e5ba7f0832d19fc29c7ac170a43fe0998b8857d628b1cea0292e2
MD5 9027087d34617d38896566134d6a9ca0
BLAKE2b-256 fcdf76fbc9509e8b4056271a1b7679ec7474fcfa5b9f91a5beeb1a29766bcfe7

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp313-cp313-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp313-cp313-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d7e111c450f7c06999b07e0e512a5b55ec276a713f52f0d0f091bec72bf23503
MD5 382d369a24894d2e8da2dc0c32bb873f
BLAKE2b-256 ba7620c539b23ca23e634412d205aee387b40951c84cf9055fc88bf05b5cb2bf

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 751473f5810cabb6739f8c6c7424dc1db8c218f7d98e7893a98aa2cd77e90983
MD5 fbd444100bb7b735e2b4c6d9eb9865eb
BLAKE2b-256 2ea34cef2ba2c5741aee876a0478fd08286567d3dc98b018b2ba7cc278b99271

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a95de0d197cd761406d22d7a64087811f3bb69aa299f28e108e7f1d8dee628b9
MD5 641711adaeec9cd44d9b4ddc6a816366
BLAKE2b-256 ea1a2bab7784499ef68e7831241d41972261bcba19555ab9b966ebb249e4af3a

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp312-cp312-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp312-cp312-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c432d26767f4425d8d9e7b20d6c0546bed9910b09f6a7f6be4e88cc511a4fee8
MD5 491a03dfacd5a7cbdb63b7b3c8667d97
BLAKE2b-256 42230af0475a72f25c450c667087ad74c5de443d6549cd097f562e8cb7319b7a

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp312-cp312-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp312-cp312-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f68f9cc49b13ead0ff0658e002e118ad2ba75246f098733df38bbe84df0d3024
MD5 a19b6fb9dd603e9c4b48757060bf5ac8
BLAKE2b-256 748dc57e9c215c6b6b9074dbcb28ce0eeecb1be1f1b2b29e4acc54fe6a19c028

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a1c9da3d58fb5ea94320319d36f53a6eac6b1b19311d34f79747ce2a9a0a5075
MD5 d569a6de8d3abd115bf7510e54fe17e0
BLAKE2b-256 bc03de721acbc0fca8416e6f913932a07ef0138d5d9b0906287fecf5fedb36c0

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f63349df23841d93e2fae279990fce6b41367ff7f5a598e0813200f4f94df303
MD5 83ba0f93efd4d2c9f4faa36340cacdc5
BLAKE2b-256 616a84b47649c28874ec3c1f5beab2cfefc322ab5ad1f70585bb69d5fe7089aa

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp311-cp311-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp311-cp311-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a8f3144a71b4a83b8d88c2823a5045937f42ffc9854c8d69e9eaaa3a84b2d436
MD5 f9be2a477bc1cb9fae3386d09de3077b
BLAKE2b-256 676ead064c8f7bae19605f96609e750e84e3d3bc75f835d4cac9c7358a2003b1

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp311-cp311-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp311-cp311-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6ea8f95d58c91c2ccc07edce17e530ed4b1f3a514056fba761119a32d7d20651
MD5 a5e627fce2c4c80c34781bddb85e227e
BLAKE2b-256 8a7a320f29a17bcd8305b5538b779468e0d6f1023f68ef03438187a72a81ee28

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 76612d781888e481fef52e5169a480517b233a1d439aa07c2f0a542862a2324e
MD5 4277d46dea0d264aae39e05a92c86819
BLAKE2b-256 efd033a8fbf864572fbcd25f807c09ee55d8ea2c84a50798f37ca60b2c6a44b2

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e44954b4fde0f040a3faaeb81948b3016e1ebaa44f5e06af049446b230eb1996
MD5 daf8d264b0fd43e2187d52e12225fb89
BLAKE2b-256 8d1692441c533ef465933502df2fa1a26440ab5f77142a66d7ebb8d780db9b2d

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp310-cp310-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp310-cp310-manylinux_2_28_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2d5207040ce65a646d31c82f0bdaabb502fd8bef798e051ad1e5eb902b16ba10
MD5 7b6725547884391f568b67ab58ae3028
BLAKE2b-256 144c3354293729cd1dbac0d5a5a69652064f1fb7a615fa9607e0b9d8eca7cb5f

See more details on using hashes here.

File details

Details for the file quickjs_cffi-0.1.2-cp310-cp310-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for quickjs_cffi-0.1.2-cp310-cp310-manylinux_2_28_aarch64.manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5c88cd3dcf9262fef55ff099606823e2a19fc113919d5f997a4cc343561261bc
MD5 3125e522ffa6c644482550480985b5b7
BLAKE2b-256 ad3e8ba35a17164f2a17ec5a40efab99d0e1809681c28938146883241981edfc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page