Skip to content

Edit and run Jupyter Notebooks with plain text editors like Neovim while live viewing them with Vivify

License

Notifications You must be signed in to change notification settings

jannis-baum/Jupyviv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

219 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jupyviv

Jupyviv is a solution for working with and running Jupyter Notebooks from plain text editors such as Neovim while using Vivify as a live viewer of the full Notebook in the browser.

Showcase

Note

Jupyviv is very new. I have been using it myself in my daily workflow for a few months now but there may be bugs that make it hard for you to use it. If this happens, don't hesitate to open an issue, we'll find a solution and fix it!

Features

Aside from allowing you to use your favorite editor with Jupyter Notebooks, the main benefit of Jupyviv comes from the fact that computation is fully decoupled from file handling and your editor:

  • Edit and render your Notebooks locally and optionally run computation on a different machine through an SSH tunnel
  • Disconnect and keep running: No need to keep the your local machine connected or even running to have the remote keep computing and saving all outputs. This is something Jupyter Notebooks can't do
  • Almost no setup on remote: Just install Jupyviv and the Kernel you need, open the SSH tunnel and you are good to go. No need to even clone your repository there or configure anything

Install

pip install jupyviv

Usage

Using Jupyviv requires Vivify and a plugin for integration with your editor. See below for a list of existing editor integration.

Jupyviv itself is made up of two components:

  • Agent, responsible for computation
  • Handler, responsible for handling files locally, and communication between the Agent, your editor, and Vivify

The Handler is always run locally where your editor and Vivify are as well, and should be taken care of by your editor plugin. The Agent can be automatically launched and managed by the Handler, or run separately (optionally on a different machine).

To run the Agent either way, you need the Jupyter Kernel for the respective language installed, e.g. pip install ipykernel for Python. If you want to run the agent separately, use jupyviv agent --help for more information.

Existing editor integration

About

Edit and run Jupyter Notebooks with plain text editors like Neovim while live viewing them with Vivify

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published