OO-LD Playgrounds¶
Two browser playgrounds for the oold
package. Both run entirely in your browser: no server, no install, no account.
They answer different questions, so pick by what you want to see.
oold install.- Monaco editor with
tycompiled to WebAssembly - Completion resolves fields on linked models, with their types
- Live diagnostics on generics such as
Link[T]andLinkList[T] - Inline overlay showing values fetched from a backend
- Full Python kernel on Pyodide, with cell output and rich display
- Completion introspects the running namespace, not the source
- Resolves models generated by
datamodel-code-generator anywidgetviews render inline
Which one¶
A static type checker reads source. It cannot see a class built by exec() or
create_model(), because that class has no source to read. The Jupyter kernel
introspects live objects and resolves exactly those cases.
The trade runs the other way too. JupyterLite reports no diagnostics at all, and cannot gain them in a serverless deployment, because the language server support needs a subprocess and a websocket route that a static site has no way to serve.
So: ty playground to see what the types say, JupyterLite to see what the objects actually are.
Browser support¶
Use a Chromium based browser. Firefox does not implement JSPI, which the Pyodide
kernel depends on, and the notebook fails to start with
WebAssembly stack switching not supported. The ty playground works in both.
First load takes a few seconds in either: the Python runtime and the packages are downloaded and started in the page.