Skip to main content

An utility that extends Jupytext. Allows to auto-refresh browser when source file is changed.

Project description

Jupyter Browser Reload

Flow-saving tool that automatically reloads Jupyter Notebook in a browser when its source .py file is changed and executes all changed cells.

It uses

  • Jupytext - to synchronize .ipynb and .py files
  • Watchdog - to watch for .py file changes
  • Selenium - to have a full control over a browser with opened Jupyter Notebook

Why Jure

Jupytext is a great tool that for instance allows user to benefit from static code analysis of Jupyter Notebooks. However I always struggled with this workflow: after each edit of .py file I needed to manually reload browser and execute all changed cells.

standard

Jure automatically reloads browser on each .py file change, so it would instantly show actual notebook content. Additionally it scrolls to last changed cell and executes all cells that were changed.

with jure

Installation

The most non-trivial part is install ChromeDriver on you computer, here's sample link for Ubuntu for reference. After that it's simply

pip install jure

Usage

First, you need to sync your .ipynb file with .py with Jupytext, see official manual.

Then launch a Jupyter Notebook server (jupyter notebook ...).

Then run

jure --token=[TOKEN] --jupyter_root_dir=[ROOT_DIR] --notebook_path=[NOTEBOOK_PATH]

Where [TOKEN] as an access token which is required to access Jupyter Notebook from browser, [ROOT_DIR] is a path to directory from which jupyter notebook ... command was executed and [NOTEBOOK_PATH] is a path to the notebook .ipynb file you'll work with.

Limitations

This is an experimental and unstable product, any issues, suggestions, feature requests and PRs are appreciated. Current problems:

  • Only Google Chrome web browser is supported
  • Selenium might be inconvenient
  • No password auth / remote notebook hosts
  • In some rare cases user needs to reload browser tab manually
  • For large notebooks page reload might be too slow (tough one)

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

jure-0.3.1.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

jure-0.3.1-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file jure-0.3.1.tar.gz.

File metadata

  • Download URL: jure-0.3.1.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.10 CPython/3.7.7 Linux/5.4.0-51-generic

File hashes

Hashes for jure-0.3.1.tar.gz
Algorithm Hash digest
SHA256 b87493965afa8a1a0ce5cfb160f0b2ff07e2d8549637e8d94fb71a2b781484f0
MD5 b18b56394dc8b233e5abfd9203550c74
BLAKE2b-256 d657aa6d3638a88129bac960d5d73418ad45acd7386b4f2d9c1a2ee3884467f3

See more details on using hashes here.

File details

Details for the file jure-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: jure-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.10 CPython/3.7.7 Linux/5.4.0-51-generic

File hashes

Hashes for jure-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5abd082543d3b7d136af2fc04446d9889404238789bba7228f0a345d58690ee4
MD5 14df8d2d88353c5b3079e15980ec24c0
BLAKE2b-256 cd33709cc51a3edfd78776bcb6ac46976fbbb2712bc871694d9bf7fed7553bd6

See more details on using hashes here.

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