Utilizing Jupyter and the vdom Python library, Grant was able to easily recreate elements from Victor’s Tangle library in pure Python. Vdom is a project from the nteract community that allows Python users to declaratively create UI using functions vs. the traditional and much less ergonomic method of passing strings to IPython’s HTML display class. On the front-end, vdom uses React to render these virtual DOM objects so it benefits from React’s DOM reconciliation optimizations. Grant has recently added event handling support to vdom, allowing users to not just render data using vdom but also interact with it. When these explorations are completed, the data science community will have a whole new arsenal of interactivity at their disposal!
Grant’s event handling work has already been merged into vdom and is waiting to be merged into JupyterLab. You can try it out now on mybinder (event handling demo, React component demo, and Tangle demo coming soon). If you are interested in helping with this effort, you can reach out to Grant on GitHub. Interactive VDOM is already being used to facilitate real-time interactions within OmniSci’s GPU-accelerated analytics. The excitement for this work is building, so keep a lookout for new developments as they arrive later on this year!