Skip to content

Welcome to pyjs

Pyjs is a python - javascript FFI for webassembly. It allows you to write python code and run it in the browser.

Quickstart

Access Javascript from Python:

import pyjs

# hello world 
pyjs.js.console.log("Hello, World!")

# create a JavaScript function to add two numbers
js_function = pyjs.js.Function("a", "b", """
    console.log("Adding", a, "and", b)
    return a + b
""")

# call the function
result = js_function(1, 2)

Access Python from Javascript:

// hello world
pyjs.eval("print('Hello, World!')")

// eval a python expression and get the result
const py_list = pyjs.eval("[i for i in range(10)]")

/// access 
console.log(py_list.get(0)) // same as py_list[0] on the python side

Try it out

To try it out, you can use jupyterlite, the JavaScript REPL or the Python REPL.