jupyterlite
threads
Our great sponsors
jupyterlite | threads | |
---|---|---|
19 | 16 | |
3,551 | 661 | |
1.8% | 2.4% | |
8.9 | 2.0 | |
10 days ago | 3 months ago | |
TypeScript | WebAssembly | |
BSD 3-clause "New" or "Revised" License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
jupyterlite
-
SymPy: Symbolic Mathematics in Python
The JupyterLite Python-compiled-to-WASM build has NumPy, SciPy, matplotlib, and SymPy installed; so you can do computer algebra with SymPy in a browser tab.
https://github.com/jupyterlite/jupyterlite/tree/main/py/jupy... :
> Initial support for interactive visualization libraries such as: altair, bqplot, ipywidgets, matplotlib, and plotly
- Vscode.dev: Local Development with Cloud Tools
-
Show HN: Ipython-GPT, a Jupyter/IPython Interface to Chat GPT
https://jupyterlite.readthedocs.io/en/latest/howto/extension... :
> We recommend checking out how to create a server extension first
From https://github.com/jupyterlite/jupyterlite/issues/237#issuec... re: 'micropip':
%pip install $@
- Show HN: Classic FPS Wolfenstein 3D brought in the browser via Emscripten
-
Jupyterlab Desktop
Agreed that would be a killer feature. Unzip this package and get a functional Python + Jupyter + scientific (numpy, pandas, scipy, matplotlib) environment.
I have been on-and-off teaching some people Python and the initial setup on-ramp is horrible. Ok, so install Python, now ignore-this-for-now-complications: create a "virtualenv", use this thing called "pip", install these half-dozen things to get a basic notebook (Jupyter + scipy things), install these other half-dozen quality of life things, you should probably also have "conda" for the future, etc. That's a lot of nonsense for someone I am trying to show an alternative to Excel.
My shortcut, "You want to try Python?" approach has been to start with JupyterLite[0] where I can immediately get people coding and delay that pain.
- Show HN: A 100% free and interactive Python course for coding beginners
-
Hacker News top posts: Nov 29, 2022
JupyterLite: a JupyterLab distribution that runs in the browser\ (45 comments)
- JupyterLite is a JupyterLab distribution that runs in the browser
-
LibreOffice running natively in a browser via WebAssembly
Jupyter runs natively in the browser now with JupyterLite: https://github.com/jupyterlite/jupyterlite It can use a native browser JS kernel, or some languages that have been converted to run in the browser with WASM (including a full python environment called pyodide).
VS Code also runs natively in the browser now: https://code.visualstudio.com/blogs/2021/10/20/vscode-dev This uses a Chrome only (for now) filesystem access API to give the browser access to your native files--you can edit them entirely in the browser with nothing happening on a server.
- Turns Jupyter notebooks into standalone web applications and dashboards
threads
-
No installation required: how WebAssembly is changing scientific computing
Similarly for threads: https://github.com/webassembly/threads
-
WebAssembly: Adding atomics waits to the main thread is the right thing to do
Specifically I submitted this to draw attention to the latest comment in the thread: https://github.com/WebAssembly/threads/issues/177
It's a good deep dive into how a small, but well-intentioned, browser choice nearly a decade ago led to poor outcomes for the WebAssembly ecosystem.
-
WASI Support in Go
The answer is: it's complicated. Which is most of the time the answer in the WASI world.
For this case it's complicated because some runtime supports https://github.com/WebAssembly/threads which mostly contains things like the spec for atomic but not the actual "threads" specs and then some runtimes (i.e wasmtime) also supports https://github.com/WebAssembly/wasi-threads which is one version of the threads. But a new proposal came into play https://github.com/abrown/thread-spawn so ... it's complicated.
-
WASM is the future?
There’s a proposal for threads
- Bringing Git in the browser via Go and WebAssembly. Upload, create files, folders, branches, commits etc... On the fly in the browser
-
LibreOffice running natively in a browser via WebAssembly
WebAssembly is having/going to have threads
-
The State of WebAssembly – 2021 and 2022
It's disappointing to see the WebAssembly/threads proposal is still only in proposal state, despite existing since 2018. It being just a proposal stops languages like golang from actually implementing support for it, despite Chrome supporting it since v70.
-
Using WebAssembly threads from C, C++ and Rust
Ah, I should have clarified that I mean the assembly instructions for atomics, rather than the JavaScript API. I.e. the opcodes listed here: https://github.com/WebAssembly/threads/blob/master/proposals...
-
AMA: We are Akhi, Alexandra, Islam, and Dimitris from the DFINITY Execution team. Ask us anything about building the execution layer.
Another point to add here is that the current wasm specification does not support threads although there is a proposal to add one. So I imagine that till the wasm specification includes it, we will continue to have only single threaded canisters.
What are some alternatives?
starboard-notebook - In-browser literate notebooks
pyodide - Pyodide is a Python distribution for the browser and Node.js based on WebAssembly
panel - Panel: The powerful data exploration & web app framework for Python
WASI - WebAssembly System Interface
xeus-cling - Jupyter kernel for the C++ programming language
brython - Brython (Browser Python) is an implementation of Python 3 running in the browser
webcontainer-core - Dev environments. In your web app.
streamlit - Streamlit — A faster way to build and share data apps.
Transcrypt - Python 3.9 to JavaScript compiler - Lean, fast, open! -
onload - OpenOnload high performance user-level network stack
Uno Platform - Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported.
BrowserFS - BrowserFS is an in-browser filesystem that emulates the Node JS filesystem API and supports storing and retrieving files from various backends.