Comments (10)
How about ipylite
? Short, not taken, decent mashup of the two?
from jupyterlite.
Another option would be to use the "Python (Pyodide)" display name, similar to "Python (ipykernel)" and "Python (XPython)" in regular Jupyter.
And use the jupyterlite-pyodide-kernel
package name to distribute it once it's moved to a separate repo: #386
from jupyterlite.
So now might be a good time to start having a minimal IPython (mostly IPython.display) that would run in jupyterlite.
Indeed! But answering the API mail exactly on #18 will need this anyway for e.g. bokeh
or freaky-deaky wrapper kernels that subclass KernelBase
.
So, offspring-of-pyolite probably needs to not only offer an importable IPython
and ipykernel
, but also distributions named ipython
and ipykernel
that have version-equivalence with the "real ones" on PyPI.
Further, as the pyodide one is, for the time being, by far the heaviest kernel, it ideally needs to be distributed as its own package(s), that is/are on PyPI, a la #104. So the notional real {sys.prefix}/share/jupyter
of the building environment after installing these package(s) might be something like:
share/jupyter/lite/pyodide/
ipython-7.24.0-py3-none-any.whl
ipykernel-5.5.5-py3-none-any.whl
...and build up a compatible index similar to how we're doing contents for now.
Starting to get pretty fractal at this point, as these would also be .whl
s that someone could micropip.install()
.
cc @Carreau
from jupyterlite.
Happy to do changes needed in IPython and reduce the size. I doubt I'll have time myself.
from jupyterlite.
@Carreau No worries! I don't think we'll need any changes upstream, just alerting you that there might be another whl
-in-a-whl
of IPython on the horizon that only works in the browser. all the zmq stuff, etc. is basically a non-starter, and we're going to have to fake it. But luckily no windows problems!
from jupyterlite.
As a start we probably don't need the whole ipython
, but mostly its display the module? And being able to configure or override the publish_display_data
.
That would indeed also mean having the distributions as well, but those could be recreated by assembling pieces from the upstream ipython.
For ipykernel
, more modularity would also benefit other projects like xeus-python
, which patches the comms.
from jupyterlite.
Here's an interesting package for viewing 3D molecules in the browser — py3DMol
[example] — that explicitly tests for IPython but I think only really depends on the IPyhton.display
tools?
https://github.com/3dmol/3Dmol.js/blob/master/py3Dmol/py3Dmol/__init__.py
It also makes use of publish_display_data()
.
May be useful as an in-the-wild test case.
(FWIW, I know of quite a lot of packages out there that render widgets into notebooks using HTML/js but that don't make use of ipywidgets
callbacks.)
[UPDATE: now installs and can be imported but currently fails with AttributeError: module 'IPython' has no attribute 'display'
from where it makes a call to publish_display_data()
]
from jupyterlite.
How about
ipylite
? Short, not taken, decent mashup of the two?
Sounds good 👍
Just booked it on PyPI: https://pypi.org/project/ipylite
from jupyterlite.
Another option would be to use the "Python (Pyodide)" display name, similar to "Python (ipykernel)" and "Python (XPython)" in regular Jupyter.
Simple and descriptive
+1
And use the jupyterlite-pyodide-kernel package name to distribute it once it's moved to a separate repo: #386
Simple and descriptive
+1
@jupyterlite/pyodide-kernel
would also work.
from jupyterlite.
Another option would be to use the "Python (Pyodide)" display name, similar to "Python (ipykernel)" and "Python (XPython)" in regular Jupyter.
This was fixed in #685 and is already available in the latest releases.
@jupyterlite/pyodide-kernel
would also work.
Yes that would likely be the name of the underlying JS package 👍
from jupyterlite.
Related Issues (20)
- Menu "Save and export notebook as" not showing up HOT 1
- Kernel gets lost when restarting kernel HOT 2
- Include custom extension to the jupyterlite HOT 10
- Can JupyterLite / Lab interfere with other JupyterLab installs? HOT 1
- Trying to prevent "FileNotFoundError: [Errno 44]" HOT 1
- Question: How to customise page title HOT 1
- Demo not loading anymore HOT 7
- looking if polars and/or duckdb are possible on latest jupyterlie HOT 2
- Command to update contents when notebooks are added without having to rebuild HOT 1
- Version Python and JS packages separately HOT 1
- Follow-up to the JupyterLab 4.2 and Notebook 7.2 releases
- notebook execution fails on firefox when notebook is in a subfolder and jupyterlite is in an iframe HOT 9
- Make jupyter-server a dependency of jupyterlite-core HOT 3
- JupyterLite does not run well when using enhanced security on Edge. HOT 2
- Pyodide kernel not showing up
- Mention the Pyodide kernel supports file access via the `SharedArrayBuffer`
- Document the use of `SharedArrayBuffer` on GitHub Pages
- How are the sites of practice different?
- Contents Manager integration broken in pyodide-kernel on main
- remote (classic) kernels, just like Meta Bento
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jupyterlite.