pyiron / pyiron_workflow

Graph-and-node based workflows
BSD 3-Clause "New" or "Revised" License
10 stars 1 forks source link

💡 A collaboration template repo #359

Closed liamhuber closed 2 weeks ago

liamhuber commented 2 weeks ago

@samwaseda and I were brainstorming collaboration ideas today. The underlying fundamentals of graph-node-based workflows lends itself well to this activity, since work can be divided into separate nodes with clearly defined IO channels (possibly typed) and then different people/teams only need to concern themselves with the inner workings of their individual node(s).

To leverage GitHub for such a collaboration, we thought to set up a dummy notebook with structure like:

|- workflow.ipynb
|- our_nodes/
    |- team_a_nodes.py
    |- team_b_nodes.py
    |- ...

The workflow then combines the public-facing nodes from each module into a single coherent stream; we would have a dummy version for this, but configuring the workflow notebook is the first group activity. After that, teams only need to concern themselves with changes to the notebook, and with their own submodule. The benefit of the template would be that the CI is set up to run the notebook, so you can work away at your stuff, make PRs, see how it runs, pull in changes from your colleagues, etc.

Just need to get some dummy nodes and the CI setup.

samwaseda commented 2 weeks ago

I started working on it here. Ultimately we should make it a pyiron repo. I would say we can close this issue now and continue the discussion on the repo page.