Livebook is an IPython notebook-compatible experiment to share your data stories on the web. It features live coding, realtime collaboration, a WYSIWYG prose editor, and runs 100% in the browser.
- Motivation and audience
Motivation and audience
We data scientists tell stories with data. This is why the notebook format is so powerful: a mix of explanatory prose, data, and executable code that produces charts and tables.
When we share our notebook with a client, researcher, or other colleague who is not a heavy IPython/Jupyter user, we typically send them static HTML or a PDF. But this doesn't invite them into the story, because they cannot freely tinker with the results without setting up their own Python environment.
By uploading a notebook to Livebook, you can share it in a format that allows them to play with the code or edit the prose without installing anything. When your colleagues can interact with your data stories, your narrative becomes bidirectional.
Livebook is an experiment, not for production use. We hope it will demonstrate some ideas and perhaps inform future possibilities for the Jupyter project.
Play around with your code and plots, and get instant results as you type. No need to rerun cells or track cell dependencies.
Work on your notebooks simultaneously and see your collaborators' edits on the fly.
WYSIWYG prose editor
Structure and document your notebooks as if you were writing a regular text file, including easy formatting and highlighting. Your colleagues don't need to know Markdown to contribute to the notebook.
Install or develop it
Livebook is open source and can be run locally, run on a server, or deployed to Heroku. Instructions are in
- developed on Chrome; functionality may be incomplete on other browsers
- currently not supporting full pandas, but a stand-in “fauxpandas” library
- matplotlib shim very incomplete
- no ability to use wider ecosystem of python tools
- can’t use print statements
- CSV file cannot be changed after initial upload
- size of embedded CSV file limited to a few thousand records
- Web front-end: React, Webpack
- Runtime: Pypyjs
- Editing: Ace, Medium-editor
- Charts: C3/D3
- P2P networking: WebRTC
Released under the MIT license.