Skip to main content

Tool for parametrizing, executing, and displaying Jupyter Notebooks as reports.

Project description

Notebooker

Productionise and schedule your Jupyter Notebooks, just as interactively as you wrote them. Notebooker is a webapp which can execute and parametrise Jupyter Notebooks as soon as they have been committed to git. The results are stored in MongoDB and searchable via the web interface, essentially turning your Jupyter Notebook into a production-style web-based report in a few clicks.

CircleCI Documentation Status

Run a Jupyter notebook as a report with parameters

Screenshot of "Run A Report" dialog

Execute Jupyter notebooks either on the webservice or command line

Screenshot of Executing a notebook

View the output of notebooks as static HTML

Screenshot of some notebook results

All results are accessible from the home page

Screenshot of the Notebooker homepage

Drill down into each template's results

Screenshot of result listings

Getting started

See the documentation at https://notebooker.readthedocs.io/ for installation instructions.

Notebooker has been tested on Linux, Windows 10, and OSX; the webapp has been tested on Google Chrome.

If you want to explore an example right away, you can use docker-compose:

cd docker
docker-compose up

That will expose Notebooker at http://localhost:8080/ with the example templates.

Contributors

Notebooker has been actively maintained at Man Group since late 2018, with the original concept built by Jon Bannister. It would not have been possible without contributions from:

And these fantastic projects:

0.4.4 (2022-07-18)

  • Improvement: The results screen has been widened to show as much content as possible (#79).
  • Bugfix: The delete button will now work on non-first pages for the scheduler and result listings (#90).
  • Feature: "View fullscreen" button added to all result pages

0.4.3 (2022-06-24)

  • Feature: The results page now includes a "View Stdout" button to view and copy stdout from the notebook run
  • Improvement: Prometheus improvement to allow increase() metric to be used in alerting

0.4.2 (2022-04-27)

  • Improvement: Prometheus metrics now record number of successes/failures which have been captured by the webapp.
  • Improvement: Unpinned nbconvert and added ipython_genutils dependency

0.4.1 (2022-03-09)

  • Improvement: The email "from" address is now fully configurable.
  • Bugfix: The default "from" email address domain is no longer non-existent.
  • Improvement: --running-timeout parameter allows customization of max allowed notebook runtime

0.4.0 (2021-12-17)

  • Improvement: The index page has been overhauled to be a lot more user-friendly, divided up by notebook template name.

0.3.2 (2021-11-10)

  • Feature: .ipynb files are now natively supported and can be used as Notebook Templates (#57)

0.3.1 (2021-10-29)

  • Improvement: index page should be a lot quicker due to storage improvements.
  • Bugfix: hide_code and generate_pdf options now work as intended with the scheduler.
  • Bugfix: Large notebooks were causing serialisation errors; now safely stored in gridfs.
  • Incompatibility: Reports run with this version onwards will not be readable by older versions of Notebooker.

0.3.0 (2021-10-05)

  • Major feature: scheduling natively within Notebooker
  • Bugfix: Newer versions of uuid now work properly with Notebooker
  • Improvement: See the version number in the Notebooker GUI and with a /core/version GET call.

0.2.1 (2021-02-11)

  • Bugfix: notebooker_execute entrypoint should now work as intended
  • Bugfix: Sanity and template regression tests should now work as intended
  • Improvement: Specifying a git repo should be a little simpler

0.2.0 (2020-12-17)

  • Code output can now be hidden from PDF and email output! Either check the box in the "Run Report" dialog or, using the cli, use the new --hide-code option.
  • Performance improvement for queries

0.1.0 (2020-11-30)

Support for database plugins and tidying up configuration to be consistent across the board.

Breaking changes

  • 3 primary entrypoints have been consolidated under one - notebooker-cli, e.g. notebooker-cli start-webapp and notebooker-cli execute-notebook. Run notebooker-cli --help for more info.
  • In config, PY_TEMPLATE_DIR has been renamed to PY_TEMPLATE_BASE_DIR
  • In config, GIT_REPO_TEMPLATE_DIR has been renamed to PY_TEMPLATE_SUBDIR

0.0.2 (2020-10-25)

Bugfixes & cleanup Docker support (#14)

0.0.1 (2020-09-04)

Initial release of Notebooker

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

notebooker-0.4.4.tar.gz (29.3 MB view details)

Uploaded Source

Built Distributions

notebooker-0.4.4-py3.7.egg (36.8 MB view details)

Uploaded Source

notebooker-0.4.4-py3.6.egg (36.8 MB view details)

Uploaded Source

notebooker-0.4.4-py2.py3-none-any.whl (37.4 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file notebooker-0.4.4.tar.gz.

File metadata

  • Download URL: notebooker-0.4.4.tar.gz
  • Upload date:
  • Size: 29.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.10 tqdm/4.64.0 importlib-metadata/4.2.0 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.15

File hashes

Hashes for notebooker-0.4.4.tar.gz
Algorithm Hash digest
SHA256 8ab2d9e6b754a708e2bbe9dcdb0d4aff872ce2a56809cceed8063e7a9b6fd657
MD5 a087d6009a65e62aaa509b9b3ef00ce3
BLAKE2b-256 4a566179dba39706d240e89e7b5a5d7f6dad1273bcb314bc0e54f68acdc70c41

See more details on using hashes here.

Provenance

File details

Details for the file notebooker-0.4.4-py3.7.egg.

File metadata

  • Download URL: notebooker-0.4.4-py3.7.egg
  • Upload date:
  • Size: 36.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.13

File hashes

Hashes for notebooker-0.4.4-py3.7.egg
Algorithm Hash digest
SHA256 19e3757fb39da25470cfc1451bb707a5b6b84ea35e574ef025b38fe9d4b4a890
MD5 c957d924a337f998471e0645eb7e1a6b
BLAKE2b-256 0e8f0d53636e584a29360aa5aeb0b6fd16754cd829c5434b0693440a6ee2261e

See more details on using hashes here.

Provenance

File details

Details for the file notebooker-0.4.4-py3.6.egg.

File metadata

  • Download URL: notebooker-0.4.4-py3.6.egg
  • Upload date:
  • Size: 36.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.10 tqdm/4.64.0 importlib-metadata/4.2.0 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.15

File hashes

Hashes for notebooker-0.4.4-py3.6.egg
Algorithm Hash digest
SHA256 a08b3a49d50ca56af0f294f018d14cbe0a9a7ad4ed9343428bf4bb9c305c778d
MD5 8853064c0abf347ef812c12c07a49900
BLAKE2b-256 bd925a63e28e9b705600d5f8a5ec39bd47b908d3f07e310c09b3955af998f9c9

See more details on using hashes here.

Provenance

File details

Details for the file notebooker-0.4.4-py2.py3-none-any.whl.

File metadata

  • Download URL: notebooker-0.4.4-py2.py3-none-any.whl
  • Upload date:
  • Size: 37.4 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.10 tqdm/4.64.0 importlib-metadata/4.2.0 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.15

File hashes

Hashes for notebooker-0.4.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d9de4950ab6888f4c019fb49ff8eff78246ec251ca3749133a8ad94e2e5170f6
MD5 5a3b6caac8817bb2462129ade4aca890
BLAKE2b-256 386411852f70fa66e8448356cebed1e45a432c86a2baaa56a9b197f066dc78d5

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page