Skip to main content

Generate beautiful, testable documentation with Jupyter Notebooks

Project description

nbdoc

Generate beautiful, testable documentation with Jupyter Notebooks

CI

Install

pip install nbdoc

Usage

This library consists of two cli tools as noted below.

Converting Notebooks To Markdown

! nbdoc_build --help
usage: nbdoc_build [-h] [--srcdir SRCDIR] [--force_all FORCE_ALL]
                   [--n_workers N_WORKERS] [--pause PAUSE]

Build the documentation by converting notebooks in `srcdir` to markdown

optional arguments:
  -h, --help             show this help message and exit
  --srcdir SRCDIR        A directory of notebooks to convert to docs
                         recursively, can also be a filename.
  --force_all FORCE_ALL  Rebuild even notebooks that havent changed (default:
                         False)
  --n_workers N_WORKERS  Number of workers to use
  --pause PAUSE          Pause time (in secs) between notebooks to avoid race
                         conditions (default: 0.5)

Run and Save Notebooks Inplace

! nbdoc_update -h
usage: nbdoc_update [-h] [--srcdir SRCDIR] [--flags FLAGS]
                    [--n_workers N_WORKERS] [--pause PAUSE]

Refresh all notebooks in `srcdir` by running them and saving them in place.

optional arguments:
  -h, --help             show this help message and exit
  --srcdir SRCDIR        A directory of notebooks to refresh recursively, can
                         also be a filename.
  --flags FLAGS          Space separated list of flags (tst_flags in
                         settings.ini) to NOT ignore while running notebooks.
                         Otherwise, those cells are ignored.
  --n_workers N_WORKERS  Number of workers to use
  --pause PAUSE          Pause time (in secs) between notebooks to avoid race
                         conditions (default: 0.5)

Testing Notebooks

nbdoc_test is just an alias of nbdev_test_nbs from nbdev, and is a lightweight way to test notebooks.

! nbdoc_test --help
usage: nbdoc_test [-h] [--fname FNAME] [--flags FLAGS] [--n_workers N_WORKERS]
                  [--verbose VERBOSE] [--timing] [--pause PAUSE]

Test in parallel the notebooks matching `fname`, passing along `flags`

optional arguments:
  -h, --help             show this help message and exit
  --fname FNAME          A notebook name or glob to convert
  --flags FLAGS          Space separated list of flags
  --n_workers N_WORKERS  Number of workers to use
  --verbose VERBOSE      Print errors along the way (default: True)
  --timing               Timing each notebook to see the ones are slow (default:
                         False)
  --pause PAUSE          Pause time (in secs) between notebooks to avoid race
                         conditions (default: 0.5)

Automatically Attach Links To APIs in Backticks

! nbdoc_linkify --help
usage: nbdoc_linkify [-h] [--local] [--md_path MD_PATH]

Convert names in `backticks` in markdown files that have been documented with
nbdoc.showdoc.ShowDoc to appropriate links.

optional arguments:
  -h, --help         show this help message and exit
  --local            Whether or not to build an index based on local documents
                     (default: True)
  --md_path MD_PATH  Root path to search recursively containing markdown files
                     to linkify

Documentation

Documentation can be found here.

References

nbdoc is built with nbdev. Furthermore, much of the code in this project is re-purposed from nbdev directly.

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

nbdoc-0.0.82.tar.gz (26.1 kB view details)

Uploaded Source

Built Distribution

nbdoc-0.0.82-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

Details for the file nbdoc-0.0.82.tar.gz.

File metadata

  • Download URL: nbdoc-0.0.82.tar.gz
  • Upload date:
  • Size: 26.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.5

File hashes

Hashes for nbdoc-0.0.82.tar.gz
Algorithm Hash digest
SHA256 234b785e710025357d66c90be0bf7d620a7a507786380030d749b1c4c5146600
MD5 a449cc51e5b4fc245b6f978dc69d86e4
BLAKE2b-256 113082fbcd41d191d7842d7d641421ec6cb994bbdbb30767af699a2147cd6aad

See more details on using hashes here.

File details

Details for the file nbdoc-0.0.82-py3-none-any.whl.

File metadata

  • Download URL: nbdoc-0.0.82-py3-none-any.whl
  • Upload date:
  • Size: 23.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.5

File hashes

Hashes for nbdoc-0.0.82-py3-none-any.whl
Algorithm Hash digest
SHA256 84f57e0c20b389eb748eb2055d55d5698b2f44fdef455943d396112d26103fb9
MD5 5f7181cf77f1f5f3cf3ae1177bdf64db
BLAKE2b-256 ccb37aa03973805e9d885b9c69021331bdd3ae7d919af6118973768de340c04e

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