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.0a0.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.0a0-py3-none-any.whl (2.5 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: marimo_materials-0.1.0a0.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.0a0.tar.gz
Algorithm Hash digest
SHA256 24bceb9b729d38be218768985b60fdeb1765c271dbd40e1e73c6bcbb0fb07df7
MD5 083de81cd8770c3501abfaa7d1752b6d
BLAKE2b-256 f26dce00a22a449237cd894c0baaf0cd93ff7775cb99ed34ac241e7283d847bf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: marimo_materials-0.1.0a0-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.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 92532773a5c62a9381043f2628d5464daf44c5ed40da65e8c90e62e6bd1eccfe
MD5 a12b690bfc1bf8d1046747e61b08cd94
BLAKE2b-256 e8888c8a18347edfe0289a7b285e3e3df2de4a106392628477a055b75a752716

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