# paperboy
![Status](https://img.shields.io/badge/Status-BETA%201-yellow.svg?&longCache=true&style=for-the-badge)
A web frontend for scheduling Jupyter Notebooks as reports
# Overview
[![Build Status](https://travis-ci.org/timkpaine/paperboy.svg?branch=master)](https://travis-ci.org/timkpaine/paperboy)
![https://ci.appveyor.com/api/projects/status/32r7s2skrgm9ubva?svg=true](https://ci.appveyor.com/api/projects/status/32r7s2skrgm9ubva?svg=true)
[![Coverage](https://codecov.io/gh/timkpaine/paperboy/branch/master/graph/badge.svg)](https://codecov.io/gh/timkpaine/paperboy)
[![Docs](https://img.shields.io/readthedocs/paperboy.svg)](https://paperboy.readthedocs.io)
[![Site](https://img.shields.io/badge/Site--grey.svg?colorB=FFFFFF)](https://paperboy-jp.herokuapp.com/)
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](https://jupyter.org/documentation) for the reports themselves
- Jupyter notebooks are an ideal report template, and with [NBConvert](https://github.com/jupyter/nbconvert) support a wide variety of output types, including PDFs, HTML, Emails, etc
- [Papermill](https://github.com/nteract/papermill) to parameterize notebooks
- [SQLAlchemy](https://www.sqlalchemy.org) for Storage (default)
- [Apache Airflow](https://airflow.apache.org) for Scheduling (default)
- [Dask](https://dask.org) for [Airflow Workers](https://airflow.readthedocs.io/en/stable/howto/executor/use-dask.html)
- [Luigi](https://luigi.readthedocs.io/en/stable/) as a scheduling alternative for `Airflow` (relies on `cron`)
- [PhosphorJS](https://phosphorjs.github.io) for the frontend
- Support for Python [Virtualenvs](https://virtualenv.pypa.io/en/stable/) via `requirements.txt` or custom [Docker](https://www.docker.com) images via `Dockerfile`s 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](https://github.com/QuantStack/voila) and [Dokku](https://github.com/dokku/dokku)
![](https://raw.githubusercontent.com/timkpaine/paperboy/master/docs/img/ss.png)
## Process Flow
- Upload notebook
- Configure job
- start time
- interval
- papermill parameters to autoconfigure reports
- if autoconfiguring reports from papermill:
- run or publish
- output
- notebook
- pdf
- html
- email
- script
- strip or keep code
- To edit or create additional reports on a job, configure reports
- run or publish
- output
- notebook
- pdf
- html
- email
- script
- strip or keep code
# Installation from source
Paperboy requires Python and [Node.js](https://nodejs.org), 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
Visit http://0.0.0.0:8080 in a browser to view the application.
The default authentication backend requires the registration of a username that
can be used on subsequent launches.
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
PyPI 官网下载 | jupyter_paperboy-0.1.2.tar.gz (137个子文件)
setup.cfg 254B
font-awesome.min.css 21KB
login.css 2KB
fonts.css 228B
login.html 3KB
register.html 1KB
logout.html 803B
index.html 703B
404.html 34B
MANIFEST.in 146B
paperboy.jpg 34KB
perspective.worker.async.js 628KB
bundle.js 605KB
LICENSE 11KB
perspective.worker.async.js.map 2.75MB
README.md 3KB
README.md 213B
not-zip-safe 2B
pdf_license 1KB
PKG-INFO 5KB
PKG-INFO 5KB
cors.py 30KB
application.py 9KB
report.py 8KB
job.py 7KB
notebook.py 6KB
report.py 6KB
base.py 6KB
_email.py 6KB
paperboy.airflow.py 5KB
airflow.py 5KB
remote_airflow.py 5KB
notebook.py 5KB
paperboy.luigi.py 4KB
base.py 4KB
job.py 4KB
schedule.py 4KB
forms.py 4KB
luigi.py 4KB
api.py 3KB
sqla.py 3KB
auth_required.py 3KB
multipart.py 3KB
base.py 3KB
load_user.py 3KB
airflow_login.py 3KB
user.py 3KB
report.py 2KB
fixtures.py 2KB
notebook.py 2KB
login.py 2KB
job.py 2KB
base.py 2KB
__init__.py 2KB
setup.py 2KB
local.py 2KB
register.py 2KB
user.py 2KB
_nbconvert.py 2KB
common.py 2KB
manager.py 1KB
scheduler.py 1KB
html.py 1KB
autocomplete.py 1KB
logout.py 1KB
local.py 1KB
nbconvert.py 1KB
sqla.py 1KB
notebook.py 1KB
nbconvert.py 1KB
report.py 1KB
job.py 1KB
_papermill.py 1KB
status.py 1KB
static.py 1010B
post.py 954B
papermill.py 913B
voila.py 911B
remote.py 897B
output.py 896B
post.py 889B
papermill.py 885B
voila.py 879B
dokku.py 879B
common.py 879B
config.py 852B
dokku.py 842B
deploy_nix.py 836B
storage.py 772B
__init__.py 763B
_virtualenv.py 746B
base.py 676B
__init__.py 667B
none.py 655B
deploy_win.py 641B
output.py 547B
user.py 520B
__init__.py 507B
scheduler.py 426B
base.py 366B
共 137 条
- 1
- 2
资源评论
挣扎的蓝藻
- 粉丝: 13w+
- 资源: 15万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功