diff --git a/GSOC-2023.md b/GSOC-2023.md index 9a3b6c4..dc32f3f 100644 --- a/GSOC-2023.md +++ b/GSOC-2023.md @@ -16,6 +16,10 @@ Short application checklist: Python is historically not a language designed for the Web. In particular, the size of Python packages matters little when used on the host OS. However, download size becomes critical when running Python applications in the browser with Pyodide. One way to reduce size is to create a bundler for Python applications, similar to how it's done for Javascript. +### Type conversion between Python (mypy) and Javascript (Typescript) + +Pyodide includes a Foreign Function Interface (FFI) between Python and JavaScript. Both languages can use type annotations, and it would be useful to explore how types could be statically generated for converted objects. For instance, generating Typescript types from Python annotations and vice versa. + ### Sandoxing Python execution with Deno Pyodide is used extensively in the browser. It's also possible to use it server side to run in Node.js, however, this does not provide the sandboxing functionality that many users require. It would be interesting to explore adding support for the Deno runtime which does include the sandbox functionality by default.