common-workflow-lab
ipython2cwl
Python

IPython2CWL is a tool for converting IPython Jupyter Notebooks to CWL Command Line Tools by simply providing typing annotation.

Last updated Oct 6, 2025
17
Stars
7
Forks
12
Issues
0
Stars/day
Attention Score
52
Language breakdown
No language data available.
Files click to expand
README

IPython2CWL

Codacy Badge Build Status Coverage Status Documentation Status Downloads Join the chat at https://gitter.im/ipython2cwl/community

IPython2CWL is a tool for converting IPython Jupyter Notebooks to CWL (Common Workflow Language) Command Line Tools by simply providing typing annotation.

from ipython2cwl.iotypes import CWLFilePathInput, CWLFilePathOutput
import csv
input_filename: 'CWLFilePathInput' = 'data.csv'
with open(input_filename) as f:
    csv_reader = csv.reader(f)
    data = [line for line in csv_reader]
numberoflines = len(data)
resultfile: 'CWLFilePathOutput' = 'numberof_lines.txt'
with open(result_file, 'w') as f:
    f.write(str(numberoflines))

IPython2CWL is based on repo2docker, the same tool used by mybinder. Now, by writing Jupyter Notebook and publishing them, including repo2docker configuration, the community can not only execute the notebooks remotely but also to use them as steps in scientific workflows.

Install

pip install ipython2cwl

Example

jupyter repo2cwl https://github.com/giannisdoukas/cwl-annotated-jupyter-notebook.git -o .

Docs

https://ipython2cwl.readthedocs.io/

Demo

https://github.com/giannisdoukas/ipython2cwl-demo

🔗 More in this category

© 2026 GitRepoTrend · common-workflow-lab/ipython2cwl · Updated daily from GitHub