Skip to content

fleming79/menubox

Repository files navigation

About

Create widgets and self-contained apps for Jupyterlab written entirely in Python.

Menubox is the base class and can be used as is or can be subclassed to define a new widget class. It is an Ipylab Panel widget combined with a HasParent widget. Functionality includes:

  • capable of loading multiple views
  • minimizing
  • moving itself inside a showbox and removing itself
  • Button to close itself
  • Buttons can be enabled/disabled on demand
  • Can add itself to the shell (as can any ipylab Panel widget)

filesystem

MenuboxVT provides additional features such as:

  • observing nested values
  • copying settings
  • data persistence

Installation

menubox relies on patched un-released versions of Ipylab and Ipywidgets (including jupyterlab-widget), compatible wheels are stored in the pkg directory. To ensure the packaged wheels are used, menubox should be installed from source in editable mode.

# Obtain the source.
git clone https://github.com/fleming79/menubox

cd menubox

# Install in editable mode
pip install -e .

Development

pip install -e .[dev]

Vscode

Run configurations are provided for debugging.

Distribution

hatch build -t sdist
# Only the source distribution is relevant (file ending in '.tar.gz')

Note: if the build doesn't start, try deleting the environment with.

hatch env remove

License

menubox is distributed under the terms of the MIT license.

Documentation:

For the moment, check out menubox.filesystem.Filesystem for an example.

TODO:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages