Skip to content

Run C++ code examples as Jupyter Notebooks on Binder/Google Collab (whichever works) #6304

@tapaswenipathak

Description

@tapaswenipathak

Problem Statement

A detailed example of how code snippets in the OpenMS C++ manual can be made executable on Xeus-Cling, Jupyter, Binder. This is similar to the Binder integration of the pyOpenMS code on https://pyopenms.readthedocs.io/en/latest/. The example includes the packaging of the OpenMS library and its dependencies and allows for exemplary data files to be uploaded and executed on Binder. The maintainability of the solution is guaranteed by generating notebooks from OpenMS’ example.cpps every night automatically in a separate repo and using the nightly conda.

Sub Tasks

Sub tasks Discussion/Decision Remarks
UI Strong preference for Binder w/ xeus-cling Binder (if not) → Google Collab, build timeout, extensibility
Data https://github.com/OpenMS/OpenMS/tree/develop/doc/code_examples/data later: https://abibuilder.informatik.uni-tuebingen.de/archive/openms/Tutorials/Data/latest/Example_Data/Introduction/datasets/tiny/
Code Examples https://github.com/OpenMS/OpenMS/tree/develop/doc/code_examples
Add link to openms.readthedocs.io  ? ?
Maintainability of your solution should be guaranteed by generating notebooks from OpenMS’ example.cpps every night automatically in a separate repo and using the nightly conda.  cling-notebooks (@jpfeuffer @tjeerdijk) separate repo? openms-docs? images of build of binder goes to separate repository name or branch of openms-docs/openms
How to use https://mybinder.org/v2/gh/OpenMS/pyopenms-extra/master+ipynb?urlpath=lab/tree/docs/source/index.ipynb?   datastructures_peak.ipynb

TODO

  • Create repository OpenMS/cling-notebooks
  • Create OpenMS on Binder or connect cling-notebooks
  • Test run on Binder Xeus-Cling
  • Publish to cling-notebooks
  • Republish to cling-notebooks
  • CRUD and publish to cling-notebooks
  • Optional: Example page on openms-docs about run on Binder/Google Collab
  • Cron every night to publish nightly notebooks
  • README badges (if any)

Focus Points

cc @tjeerdijk.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions