nteract/papermill

πŸ“š Parameterize, execute, and analyze notebooks

View on GitHub β†—Jump to charts ↓Open shareable report β†’

Summary Information

Updated 57 minutes ago
Added to GitGenius on September 10th, 2026
Created on July 6th, 2017
Open Issues & Pull Requests: 196 (+0)
GitHub issues: Enabled
Number of forks: 461
Total Stargazers: 6,486 (+0)
Total Subscribers: 81 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 23.4 hours
Mean response time: 228.7 days
90th percentile: 1008.6 days
Tracked items: 36

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 89% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 7% of issues opened in the past year have been closed. Three people close 84% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 27
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 878 days
Stale 30+ days: 26
Stale 90+ days: 19

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • help wanted (25)
  • bug (20)
  • enhancement (11)
  • docs (5)
  • dependencies (2)
  • needs:discussion (2)
  • new-contributor-friendly (2)
  • python (2)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Papermill is a tool for parameterizing, executing, and analyzing Jupyter Notebooks.

Papermill solves the problem of running notebooks with different inputs and orchestrating them into data pipelines. It works by designating a cell with the `parameters` tag as a template for default values, then injecting a new `injected-parameters` cell at execution time to override those defaults with supplied values. This approach lets you run the same notebook multiple times with different parameters without manual editing, and enables programmatic workflow execution where one notebook's results can determine which notebook runs next. The tool takes an opinionated stance on parameterization based on experience using notebooks at scale in production data pipelines.

Papermill suits teams running notebooks as scheduled jobs or pipeline stages in data engineering and analytics workflows. It works well for scenarios like financial reports that need to run with different date ranges or parameter sets, or for building conditional workflows where downstream notebook selection depends on upstream results. The tool supports multiple execution methods through both a Python API and command-line interface, and can read parameters from command-line flags or YAML files. It handles storage across local filesystems and cloud platforms including Amazon S3 and Azure.

The project maintains active engagement with its codebase through regular updates and responsiveness to issues. Development shows consistent attention to both new features and maintenance of existing functionality. The tool supports execution across multiple notebook environments including Python, R, Julia, and Scala, reflecting ongoing investment in cross-language compatibility.