{"library":"mini-racer","title":"Mini Racer","description":"Mini Racer is a minimal, modern embedded V8 JavaScript engine for Python. It allows executing JavaScript code directly within Python applications. As of version 0.14.1, it provides a stable API for evaluating JS, calling functions, and managing execution contexts. The project has a relatively frequent release cadence, with minor updates and bug fixes appearing every few weeks or months.","language":"python","status":"active","last_verified":"Fri May 15","install":{"commands":["pip install mini-racer"],"cli":null},"imports":["from py_mini_racer import MiniRacer","from py_mini_racer import MiniRacerEvalError"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"from py_mini_racer import MiniRacer, MiniRacerEvalError\n\n# Initialize a MiniRacer context\nmr = MiniRacer()\n\n# Evaluate JavaScript code to define a function\nmr.eval(\"function add(a, b) { return a + b; }\")\n\n# Call the JavaScript function with Python arguments\nresult = mr.call(\"add\", 1, 2)\nprint(f\"Result of add(1, 2): {result}\")\n\n# Evaluate a simple expression (e.g., getting V8 version)\njs_version = mr.eval(\"process.versions.v8\")\nprint(f\"V8 version: {js_version}\")\n\n# Demonstrate error handling\ntry:\n    mr.eval(\"throw new Error('Something went wrong!');\")\nexcep MiniRacerEvalError as e:\n    print(f\"Caught MiniRacerEvalError: {e}\")","lang":"python","description":"This quickstart demonstrates how to initialize a `MiniRacer` context, evaluate JavaScript code, call a JavaScript function with Python arguments, and handle JavaScript execution errors using `MiniRacerEvalError`.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-15","installed_version":"0.12.4","pypi_latest":"0.14.1","is_stale":true,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":2.1,"avg_import_s":0.26,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.14,"mem_mb":5.8,"disk_size":"99.0M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2.1,"import_time_s":0.11,"mem_mb":5.8,"disk_size":"99M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.24,"mem_mb":7.1,"disk_size":"100.8M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2.1,"import_time_s":0.2,"mem_mb":7.1,"disk_size":"101M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.41,"mem_mb":9.6,"disk_size":"92.7M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2,"import_time_s":0.41,"mem_mb":9.6,"disk_size":"93M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.44,"mem_mb":9.8,"disk_size":"92.5M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.9,"import_time_s":0.46,"mem_mb":9.8,"disk_size":"93M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.11,"mem_mb":5.6,"disk_size":"62.6M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"mini-racer","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":2.2,"import_time_s":0.11,"mem_mb":5.6,"disk_size":"62M"}]}}