Skip to main content

A CLI tool to resolve git conflicts and remove metadata in notebooks.

Project description

logo

Maintained by dataroots Python versions PiPy Downloads Code style: black Mypy checked Codecov test

databooks is a package to ease the collaboration between data scientists using Jupyter notebooks, by reducing the number of git conflicts between different notebooks and resolution of git conflicts when encountered.

The key features include:

  • CLI tool
    • Clear notebook metadata
    • Resolve git conflicts
  • Simple to use
  • Simple API for using modelling and comparing notebooks using Pydantic

Requirements

databooks is built on top of:

Installation

pip install databooks

Usage

Clear metadata

Simply specify the paths for notebook files to remove metadata. By doing so, we can already avoid many of the conflicts.

$ databooks meta [OPTIONS] PATHS...

databooks meta demo

Fix git conflicts for notebooks

Specify the paths for notebook files with conflicts to be fixed. Then, databooks finds the source notebooks that caused the conflicts and compares them (so no JSON manipulation!)

$ databooks fix [OPTIONS] PATHS...

databooks fix demo

Assert notebook metadata

Specify paths of notebooks to be checked, an expression or recipe of what you'd like to enforce. databooks will run your checks and raise errors if any notebook does not comply with the desired metadata values. This advanced feature allows users to enforce cell tags, sequential cell execution, maximum number of cells, among many other things!

Check out our docs for more!

$ databooks assert [OPTIONS] PATHS...

databooks assert demo

Show rich notebook

Instead of launching Jupyter and opening the browser to inspect notebooks, have a quick look at them in the terminal. All you need is to specify the path(s) of the notebook(s).

$ databooks show [OPTIONS] PATHS...

databooks show demo

Show rich notebook diffs

Similar to git diff, but for notebooks! Show a rich diff of the notebooks in the terminal. Works for comparing git index with the current working directory, comparing branches or blobs.

$ databooks diff [OPTIONS] [REF_BASE] [REF_REMOTE] [PATHS]...

databooks diff demo

License

This project is licensed under the terms of the MIT license.

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

databooks-1.3.10.tar.gz (26.3 kB view hashes)

Uploaded Source

Built Distribution

databooks-1.3.10-py3-none-any.whl (31.4 kB view hashes)

Uploaded Python 3

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