Write maintainable, production-ready pipelines using Jupyter or your favorite text editor. Develop locally, deploy to the cloud.
Project description
Join our community | Newsletter | Contact us | Docs | Blog | Website | YouTube
Notebooks are hard to maintain. Teams often prototype projects in notebooks, but maintaining them is an error-prone process that slows progress down. Ploomber overcomes the challenges of working with .ipynb files allowing teams to develop collaborative, production-ready pipelines using JupyterLab or any text editor.
Installation
Compatible with Python 3.6 and higher.
Install with pip:
pip install ploomber
Or with conda:
conda install ploomber -c conda-forge
Getting started
Use Binder to try out Ploomber without setting up an environment:
Or run an example locally:
# ML pipeline example
ploomber examples -n templates/ml-basic -o ml-basic
cd ml-basic
# if using pip
pip install -r requirements.txt
# if using conda
conda env create --file environment.yml
conda activate ml-basic
# run pipeline
ploomber build
Pipeline output saved in the output/ folder. Check out the pipeline definition
in the pipeline.yaml file.
To get a list of examples, run ploomber examples.
Click here to go to our examples repository.
Community
Main Features
- Automated notebook refactoring. Automatically convert a legacy notebook into a maintainable, modular pipeline (see demo).
- Scripts as notebooks. Open
.pyfiles as notebooks, then execute them from the terminal and generate an output notebook to review results. - Dependency resolution. Quickly build a DAG by referring to previous tasks in your code; Ploomber infers execution order and orchestrates execution.
- Incremental builds. Speed up iterations by skipping tasks whose source code hasn't changed since the last execution.
- Production-ready. Deploy to Kubernetes (via Argo Workflows), Airflow, and AWS Batch without code changes.
- Parallelization. Run independent tasks in parallel.
- Testing. Import pipelines in any testing frameworks and test them with any CI service (e.g. GitHub Actions).
- Flexible. Use Jupyter notebooks, Python scripts, R scripts, SQL scripts, Python functions, or a combination of them as pipeline tasks. Write pipelines using a
pipeline.yamlfile or with Python.
Resources
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ploomber-0.14.5.tar.gz.
File metadata
- Download URL: ploomber-0.14.5.tar.gz
- Upload date:
- Size: 232.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.2.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0359b78c25c874b99332d1d5740ffc957f3b2b6bb558a82f51c53bfc350be266
|
|
| MD5 |
3d022b21bfccea9b0033394b9fb838e0
|
|
| BLAKE2b-256 |
eed91956f6f388eecfc185e8114f538ae10f7af9b2d1f5870a901008a2ccd9c2
|
File details
Details for the file ploomber-0.14.5-py3-none-any.whl.
File metadata
- Download URL: ploomber-0.14.5-py3-none-any.whl
- Upload date:
- Size: 282.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.2.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
12a4ce19bdafe9df0511f468ac9dfa7e7ab4f9f2764f71c237d3cc846ad77584
|
|
| MD5 |
0c925243e88060100f7d598873605673
|
|
| BLAKE2b-256 |
82c9d500921e4e660bbea83227390c9bb1bb20088b5ea63fdd7c6c71f9d6abf5
|