Tools to work with Jupyter notebooks
Project description
nbtoolbelt - Tools to Work with Jupyter Notebooks
validate
: validate notebookshead
: show head or tail of notebooksdump
: dump notebook info and source on terminalstats
: summarize notebooks with statisticsview
: view notebook, including all embedded images, LaTeX, and HTML in a browsercat
: concatenate multiple notebooksclean
: clean notebooks by removing specified elementsrun
: execute notebooks, with pre/post cleaningsplit
: split notebooks into MarkDown, code, and rawpunch
: punch holes into notebooks and fill them (for creating exercises)
Available as library functions and as configurable command-line scripts.
Installation
pip install nbtoolbelt
Documentation
Documentation is available on Read the Docs.
On the command line,
you can use the options -h
or --help
.
Usage
On the command line:
nbtb [-h] [options] tool [options] nb.ipynb ...
As library: see documentation
Testing
pip install nbtoolbelt[test]
nbtoolbelt
comes with a set of automatic test cases for pytest
.
Developing
Some useful commands, and where to run them:
-
In
nbtoolbelt/docs/
,- clean build directory:
make clean
- create html documentation tree:
make html
- create pdf documentation:
make latexpdf
- determine size of documentation:
wc `find . -name '*.rst'`
- clean build directory:
-
In
nbtoolbelt/test/
,- run all test cases:
pytest .
- run all test cases:
-
In
nbtoolbelt/
,- test package configuration:
python setup.py check -r -s
- create source distribution and wheel:
python setup.py sdist bdist_wheel
- test package configuration:
-
In
nbtoolbelt/dist/
- create digital signature:
gpg --detach-sign -a ...
- upload to PyPI:
twine upload ...
- create digital signature:
-
In
nbtoolbelt/src/
,- determine size of code:
wc `find . -name '*.py'`
- determine size of code:
Steps to add a feature:
-
Add issue.
-
Design interface.
-
Add (failing) test cases in
nbtoolbelt/test/
. -
Add documentation in
nbtoolbelt/docs/
.
-
-
Implement feature in
nbtoolbelt/src/nbtoolbelt/
. -
Update
nbtoolbelt/src/nbtoolbelt/_version.py
. -
Update
CHANGELOG.rst
. -
Commit and push changes.
-
Close issue, indicating commit hash.
License
Copyright (c) 2017 - Eindhoven University of Technology, The Netherlands
This software is made available under the terms of the MIT License.
Resources
- Python: Python 3
- Jupyter
- Jupyter notebook format
- Documentation
- Includes a format validator based on JSON schemas, such as nbformat.v4.schema.json
- JSON Schema
- ./jq: a lightweight and flexible command-line JSON processor
- Python 3 Patterns, Recipes and Idioms
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nbtoolbelt-2024.7.2.tar.gz
.
File metadata
- Download URL: nbtoolbelt-2024.7.2.tar.gz
- Upload date:
- Size: 38.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2b931e5e998e114ca2f01d92b6afe17692b60f043dc54cddd07fcb7e5e23074 |
|
MD5 | 9553b961638a6e06fc4f61ecd119d340 |
|
BLAKE2b-256 | da850f73d7ec06f2f0ed55045eb70196f2ab4f8eb9803f25684f859a84ec6f98 |
File details
Details for the file nbtoolbelt-2024.7.2-py3-none-any.whl
.
File metadata
- Download URL: nbtoolbelt-2024.7.2-py3-none-any.whl
- Upload date:
- Size: 51.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6a6528a4ad5920d721fdf724000e0fbe71f4df1f860efb3e142ccac2570582b9 |
|
MD5 | 0cf62599b0c3e530823ba902b193bf86 |
|
BLAKE2b-256 | 6dffa6e71efbe59de623dafc8d19abcc8e9bc6415a0aaa3340d71392252dbf30 |