stpyv8
Python Wrapper for Google V8 Engine
Decision gist · record as of 2026-08-14
Yes, if you need Python–JavaScript interoperability in a single process and can accept that the repository is archived. The package is stable, has no known vulnerabilities, and works across major platforms and recent Python versions. However, do not rely on it for active maintenance or security patches; use it only in contexts where you control the JavaScript code being executed or can audit it thoroughly.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires precompiled wheels for your platform and Python version (3.9–3.14 supported); building from source requires C++ compiler, Python headers, and Boost libraries.
- Medium install friction due to compiled C++ extension and platform-specific wheels.
- Repository is archived and marked abandoned as of the fact sheet date, though the package remains functional and receives occasional updates; no active maintenance should be expected.
License · maintenance · safety
Apache License 2.0 (permissive) — Apache License 2.0 is permissive, allowing commercial and private use with minimal restrictions; you must retain license notices in distributions.
last release 2025-01-09 (582 days) · last repo commit 2026-04-23 · 542 stars · archived
0 known vulnerabilities (OSV.dev, 2026-08-14) · 2,109,637 downloads/mo, #3,288 on PyPI
Alternatives
Verify before relying
import STPyV8
with STPyV8.JSContext() as ctxt:
upcase = ctxt.eval("(s) => s.toUpperCase()")
print(upcase("hello"))- Whether the archived repository will receive security patches or bug fixes going forward.
- Performance characteristics and memory overhead when embedding large or long-running V8 contexts.
- Compatibility guarantees with future Python or V8 engine versions.
What it is and what it does
STPyV8 is a Python C++ extension that wraps Google's V8 JavaScript engine, enabling bidirectional interoperability between Python and JavaScript in a single process. You can evaluate JavaScript code and call JavaScript functions from Python, or export Python classes and objects to be used from within V8 contexts. The package is a maintained fork of the original PyV8 project, updated to work with modern V8 versions and Python 3.
The library ships as precompiled wheels for Linux, macOS, and Windows across Python versions 3.9 through 3.14, with a single runtime dependency on importlib_resources. It is designed for scenarios where you need to execute JavaScript logic alongside Python code without spawning a separate process or network call.
Use it for
- Embed JavaScript logic (e.g., data transformations, validation rules) directly into a Python application without external process overhead.
- Call Python functions and classes from JavaScript code running in V8, bridging domain logic written in both languages.
- Prototype or test JavaScript code in a Python environment before deploying it to a browser or Node.js runtime.
- Migrate JavaScript-heavy workflows into Python by wrapping V8 execution within Python control flow.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need Python–JavaScript interoperability in a single process and can accept that the repository is archived.
The package is stable, has no known vulnerabilities, and works across major platforms and recent Python versions. However, do not rely on it for active maintenance or security patches; use it only in contexts where you control the JavaScript code being executed or can audit it thoroughly.
Install
stpyv8 on PyPI
Before you install
Medium install friction due to compiled C++ extension and platform-specific wheels. Repository is archived and marked abandoned as of the fact sheet date, though the package remains functional and receives occasional updates; no active maintenance should be expected.
Requires precompiled wheels for your platform and Python version (3.9–3.14 supported); building from source requires C++ compiler, Python headers, and Boost libraries.
License in practice
Apache License 2.0 is permissive, allowing commercial and private use with minimal restrictions; you must retain license notices in distributions.
Quickstart
import STPyV8
with STPyV8.JSContext() as ctxt:
upcase = ctxt.eval("(s) => s.toUpperCase()")
print(upcase("hello"))
Verify before relying
- Whether the archived repository will receive security patches or bug fixes going forward.
- Performance characteristics and memory overhead when embedding large or long-running V8 contexts.
- Compatibility guarantees with future Python or V8 engine versions.
Package facts
| License | Apache License 2.0 permissive |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 1 packageimportlib_resources |
| Maintenance | Abandoned 582 days since the last release |
| Last repo commit | repository archived |
| First released | |
| Downloads | 2,109,637 / month, #3,288 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableEnvironment :: PluginsIntended Audience :: DevelopersIntended Audience :: System AdministratorsLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: C++Programming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.9Topic :: InternetTopic :: Internet :: WWW/HTTPTopic :: Software DevelopmentTopic :: Software Development :: Libraries :: Python ModulesTopic :: Utilities |
Evidence: stpyv8-13.1.201.22-cp310-cp310-macosx_13_0_x86_64.whl; stpyv8-13.1.201.22-cp310-cp310-macosx_14_0_arm64.whl; stpyv8-13.1.201.22-cp310-cp310-manylinux_2_31_x86_64.whl; stpyv8-13.1.201.22-cp310-cp310-win_amd64.whl; stpyv8-13.1.201.22-cp311-cp311-macosx_13_0_x86_64.whl; stpyv8-13.1.201.22-cp311-cp311-macosx_14_0_arm64.whl; stpyv8-13.1.201.22-cp311-cp311-manylinux_2_31_x86_64.whl; stpyv8-13.1.201.22-cp311-cp311-win_amd64.whl; stpyv8-13.1.201.22-cp312-cp312-macosx_13_0_x86_64.whl; stpyv8-13.1.201.22-cp312-cp312-macosx_14_0_arm64.whl; stpyv8-13.1.201.22-cp312-cp312-manylinux_2_31_x86_64.whl; stpyv8-13.1.201.22-cp312-cp312-win_amd64.whl; stpyv8-13.1.201.22-cp313-cp313-macosx_13_0_x86_64.whl; stpyv8-13.1.201.22-cp313-cp313-macosx_14_0_arm64.whl; stpyv8-13.1.201.22-cp313-cp313-manylinux_2_31_x86_64.whl; stpyv8-13.1.201.22-cp313-cp313-win_amd64.whl; stpyv8-13.1.201.22-cp314-cp314-macosx_13_0_x86_64.whl; stpyv8-13.1.201.22-cp314-cp314-macosx_14_0_arm64.whl; stpyv8-13.1.201.22-cp314-cp314-manylinux_2_35_x86_64.whl; stpyv8-13.1.201.22-cp39-cp39-macosx_13_0_x86_64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “embed v8 engine python”
- stpyv8STPyV8 embeds Google V8 JavaScript engine into Python, allowing you…
- py-mini-racerEmbeds a modern V8 JavaScript engine in Python, allowing you to…
- mini-racerEmbeds Google's V8 JavaScript engine in Python, allowing you to…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also deno · py-mini-racer · PyExecJS · mini-racer · quickjs · static-ffmpeg · dotnetcore2 · Js2Py · streamlit-javascript · Js2Py-3.13