Jupyter Model Development Kit (MDK)
The Jupyter MDK will allow a dramatic expansion of the capabilities of interactive View creation, by allowing seamless integration with the MMS along with leveraging collaborative Jupyter sessions.
It’s the vision that by utilising MMS’s element based storage and versioning scheme with Jupyter notebooks and Python REST client libraries that can be used within a notebook, the Jupyter MDK can provide a more interactive and powerful way to construct Views while keeping the narrative oriented presentation of View Editor.
Quickstart
Prerequisites
- JupyterLab or Jupyter Notebook
- Will be automatically installed below if not already available.
- pip
- Model Management System (MMS) 4
- Not backwards compatible with MMS 3
Installation
-
Install the latest jupyter-mdk PyPi package and its dependencies with
pip install jupyter-mdk
-
Locate your Jupyter config file or generate one with
jupyter notebook --generate-config
that defaults to~/.jupyter
. -
Add configuration for MMS integration, e.g.
from mmscontents import MMSContentsManager c = get_config() # Tell Jupyter to use MMSContentsManager for all storage. c.NotebookApp.contents_manager_class = MMSContentsManager c.MMSContentsManager.mms_url = 'https://mms.yourcompany.com' c.MMSContentsManager.mms_project = '<project_id>' c.MMSContentsManager.mms_username = '<username>' c.MMSContentsManager.mms_password = '<password>'
-
Run Jupyter as you normally would, e.g.
jupyter notebook
-
Test installation by creating a new notebook and saving. The notebook should not be in the local filesystem but instead accessible via MMS's REST API, e.g.
https://mms.yourcompany.com/projects/<project_id>/refs/master/notebooks
, to any user who has been granted access to the project both through MMS and Jupyter clients with Jupyter MDK similarly configured.
Contributing
To learn how you can get involved in a variety of ways, please see Contibuting to OpenMBEE.