ipypy
Store Jupyter Notebooks in a more repo and coding friendly way.
Have you ever noticed that a Jupuyter Notebook nowadays is a json file? Containing together the metadata of the notebook itself, the list of cells, and for each cell, not only the source (what was written on it), but also the outputs, and metadata for each cell.
This project attemps to propose an alternative for that.
How
You can pick between a SplitCodeManager, which stores each notebook in:
- my_file.ipynb (the usual notebook file, but with source information extracted)
- my_file.ipypy (a pure code file that stores only the actual source code)
Or, a SplitOutputManager, which stores each notebook in:
- my_file.ipynb (the usual notebook file, but without the cells output)
- my_file.nbout (a json file that stores only the outputs of each cell)
Benefits
- You can now import your notebook from another file
- You can now use standard coding tools and practices for manipulating Notebooks code:
- testing
- import code defined in there
- editable naturally by any editor
- refactoring
- tracking changes
- ...
- The source code of your notebook, can be versioned in a repository, where diffs, and history is readable. Now makes sense. It's code.
- (Work In Progress) You can choose to simply ignore the metadata files (.ipynb) in the repository, or keep them versioned. It should be up to you.
Warning
We are in beta. Once you open a notebook with this extension enabled, and later save it, your notebook will be saved in a format a bit incompatible.
Installation
$ pip install ipypy
You will also need to configure your jupyter so it uses ipypy, by editing your jupyter config file, or from command line
$ jupyter lab --NotebookApp.contents_manager_class="ipypy.SplitCodeManager"
Metadata
Release files for ipypy 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| ipypy-0.1.2.tar.gz | 7.2 kB | Without provenance | Details for ipypy-0.1.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| ipypy-0.1.2-py3-none-any.whl | Python 3 | none | any | Details for ipypy-0.1.2-py3-none-any.whl |
Total release size: 16.9 kB
Release files / ipypy-0.1.2.tar.gz
| Download URL | ipypy-0.1.2.tar.gz |
|---|---|
| Size | 7.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
04d7ba948846d3966174a5b6b9be2478a02a985ad355142a4f73850c883c4d56
|
|
BLAKE2b-256 checksum How to use checksums |
d0adf655cf5720cdfd284795cb21cafb0f063d9086ed8fea2c3fd027cae4a7b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.6
|
Release files / ipypy-0.1.2-py3-none-any.whl
| Download URL | ipypy-0.1.2-py3-none-any.whl |
|---|---|
| Size | 9.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7fc5535bb973ed82a5ec1845e996f9aa3413db324b9605ee7c61687d4d64ffdf
|
|
BLAKE2b-256 checksum How to use checksums |
584045b7ec7408af7eaab9fe5459ac9b7f25c30f3ae768da9787765a9f485863
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.6
|
Security for ipypy 0.1.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.