Skip to main content

Collection of Anywidget Widgets

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

marimo_materials-0.1.0a2.tar.gz (2.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

marimo_materials-0.1.0a2-py3-none-any.whl (2.5 MB view details)

Uploaded Python 3

File details

Details for the file marimo_materials-0.1.0a2.tar.gz.

File metadata

  • Download URL: marimo_materials-0.1.0a2.tar.gz
  • Upload date:
  • Size: 2.4 MB
  • Tags: Source
  • Uploaded using 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}

File hashes

Hashes for marimo_materials-0.1.0a2.tar.gz
Algorithm Hash digest
SHA256 0c9de184ed1f948195d62eb9b6a6f051ad40ef9cec0ec9c113503f47696d8192
MD5 df51fc1787a9b13b88487e44870e30bb
BLAKE2b-256 ab8b62a09c5192c0ec4e0a44521b3ff89c438a80ce537ddeaccd168ec4c4d5b7

See more details on using hashes here.

File details

Details for the file marimo_materials-0.1.0a2-py3-none-any.whl.

File metadata

  • Download URL: marimo_materials-0.1.0a2-py3-none-any.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: Python 3
  • Uploaded using 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}

File hashes

Hashes for marimo_materials-0.1.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 2cfccef7ddf3ae0a98a122f9b5cec648a3fe3f5d9537b5aa38c77ae2c131ea4d
MD5 7872e407ba20df4fea346300fff98c1c
BLAKE2b-256 b429eeed5d3692a09d80b3ca9ef580158095e5cf3a860e0b528983da21deb9de

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page