Metadata-Version: 2.4
Name: nbpipe
Version: 0.1.2
Summary: Run sequences of Jupyter notebooks as a workflow from the command line or the JupyterLab sidebar
Project-URL: Homepage, https://github.com/ngafar/nbpipe
Project-URL: Repository, https://github.com/ngafar/nbpipe
Project-URL: Issues, https://github.com/ngafar/nbpipe/issues
Author: Nawaz Gafar
License: MIT
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Requires-Dist: ipykernel>=7.2.0
Requires-Dist: jupyter-client>=8.0
Requires-Dist: jupyter-server>=2.0
Requires-Dist: nbformat>=5.10.4
Requires-Dist: pyyaml>=6.0.3
Description-Content-Type: text/markdown

# nbpipe

Run sequences of Jupyter notebooks as a workflow from the command line or the JupyterLab sidebar.

## Installation

```bash
pip install nbpipe
```

## Usage

Create a `.nbpipe/` directory at the root of your project and add a workflow YAML file inside it. 

```yaml
# .nbpipe/my_workflow.yaml
# Notebook paths are relative to the project root

name: my_workflow
steps:
  - notebook: prepare_data.ipynb
    output: data/processed.csv
  - notebook: train_model.ipynb
```

Run it from the CLI:

```bash
nbpipe run .nbpipe/my_workflow.yaml
```

## Step fields

| Field | Required | Description |
|-------|----------|-------------|
| `notebook` | yes | Notebook to run, relative to the project root |
| `output` | no | File the notebook must produce — workflow fails if absent |
