This release is a pre-release and may not be stable for production use.
marimo_materials
Interactive AnyWidgets for computational materials science notebook environments.
This project is a domain-specific widget library for materials scientists working in notebook environments (Jupyter, Marimo, VSCode, Colab, etc.). It provides interactive UI components tailored to common workflows in computational materials science — visualising crystal structures, monitoring DFT convergence, and more.
Acknowledgements
This project is based on wigglystuff by @koaning, used and adapted here under the MIT License. The scaffold, build system, and anywidget integration patterns are all drawn from that project. Go star it.
Installation
uv pip install marimo_materials
# or
pip install marimo_materials
Widgets
🚧 This library is in early development. Widgets will be added here as they are built.
Development
Install all dependencies (Python + JS tooling):
make install
npm install
Run the JS bundler in watch mode while developing:
npm run dev
Run tests:
make test
Preview the docs locally:
make docs-serve
How It Works
Each widget is a Python class with traitlets that sync bidirectionally with a JavaScript frontend via anywidget. The Python traits are the public API; the JS is purely the renderer. This means widgets work anywhere anywidget is supported — Jupyter, Marimo, Shiny for Python, Solara, VS Code, and Google Colab.
License
MIT — see LICENSE.
Original wigglystuff code copyright © koaning, MIT License.
Metadata
Release files for marimo_materials 0.1.0a2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| marimo_materials-0.1.0a2.tar.gz | 2.4 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| marimo_materials-0.1.0a2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 4.9 MB
Release files / marimo_materials-0.1.0a2.tar.gz
| Download URL | marimo_materials-0.1.0a2.tar.gz |
|---|---|
| Size | 2.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0c9de184ed1f948195d62eb9b6a6f051ad40ef9cec0ec9c113503f47696d8192
|
|
BLAKE2b-256 checksum How to use checksums |
ab8b62a09c5192c0ec4e0a44521b3ff89c438a80ce537ddeaccd168ec4c4d5b7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Pop!_OS","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / marimo_materials-0.1.0a2-py3-none-any.whl
| Download URL | marimo_materials-0.1.0a2-py3-none-any.whl |
|---|---|
| Size | 2.5 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2cfccef7ddf3ae0a98a122f9b5cec648a3fe3f5d9537b5aa38c77ae2c131ea4d
|
|
BLAKE2b-256 checksum How to use checksums |
b429eeed5d3692a09d80b3ca9ef580158095e5cf3a860e0b528983da21deb9de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Pop!_OS","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|