# Try pyjs The REPL below runs Python with pyjs in your browser ([xeus-python](https://github.com/jupyter-xeus/xeus-python) kernel in [JupyterLite](https://jupyterlite.readthedocs.io)). For a full fledged example, open the tour of the Python API in JupyterLite, or see how synchronous Python code can wait for JavaScript promises (`pyjs.run_sync`). ```{replite} :kernel: xpython :height: 600px :prompt: Try pyjs import pyjs # call JavaScript from Python pyjs.js.console.log("Hello from Python!") add = pyjs.js.Function("a", "b", "return a + b") add(1, 2) ``` ## 64 bit (wasm64) All of this also exists as a 64 bit build (wasm64, can use more than 4 GB of memory, needs a browser with WebAssembly memory64 support): JupyterLite with the wasm64 Python kernel, e.g. the tour of the Python API. ## From JavaScript pyjs can also be used from JavaScript: the tour of the JavaScript API runs in the JavaScript kernel of [jupyterlite-javascript-kernel](https://github.com/jupyterlite/javascript-kernel) (the notebook uses the IFrame runtime, it also works with the Web Worker runtime). It loads the pyjs runtime (`pyjs_runtime_browser.js` / `.wasm`) and a packed environment, deployed next to the JupyterLite in `pyjs-runtime/wasm32/` and `pyjs-runtime/wasm64/` (the wasm64 one when the browser supports memory64).