A web frontend for scheduling Jupyter notebook reports
Last updated Jun 1, 2026
254
Stars
25
Forks
0
Issues
0
Stars/day
Attention Score
55
Topics
Language breakdown
Python 70.1%
TypeScript 21.3%
CSS 5.3%
HTML 1.5%
Smarty 1.4%
JavaScript 0.2%
▸ Files
click to expand
README
paperboy
A web frontend for scheduling Jupyter Notebooks as reports
Overview
Paperboy is a production-grade application for scheduling reports. It has a flexible architecture and extensible APIs, and can integrate into a wide variety of deployments. It is composed of various industrial-strength technologies from the open source world.
- Jupyter Notebooks for the reports themselves
- Papermill to parameterize notebooks
- SQLAlchemy for Storage (default)
- Apache Airflow for Scheduling (default)
Airflow (relies on cron)
- PhosphorJS for the frontend
- Support for Python Virtualenvs via
requirements.txtor custom Docker images viaDockerfiles on a per-notebook level - Traitlets parameterization of storage and scheduler classes for easy integration with custom storage backends and custom schedulers
- Single click notebook deployment with Voila and Dokku

Process Flow
- Upload notebook
- Configure job
- To edit or create additional reports on a job, configure reports
Installation from source
Paperboy requires Python and Node.js, which can be installed from conda-forge if conda is available.
Clone the repository and run following commands to install and launch the application:
- npm install
- npm run build
- pip install -e .
- python -m paperboy
The default authentication backend requires the registration of a username that can be used on subsequent launches.
🔗 More in this category