Metadata-Version: 2.1
Name: bookshelf
Version: 0.2.1
Summary: A collection of curated climate data sets
Home-page: https://gitlab.com/climate-resource/bookshelf/bookshelf
Author: Jared Lewis
Author-email: jared.lewis@climate-rescource.com
License: MIT
Keywords: data management,climate
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: MIT License
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.7
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: click
Requires-Dist: click-log
Requires-Dist: scmdata (>=0.14.2)
Requires-Dist: pooch
Requires-Dist: boto3
Requires-Dist: pydantic
Requires-Dist: datapackage
Requires-Dist: pycountry
Requires-Dist: importlib-metadata ; python_version < "3.8"
Provides-Extra: dev
Requires-Dist: bandit ; extra == 'dev'
Requires-Dist: black (==22.3.0) ; extra == 'dev'
Requires-Dist: flake8 (==4.0.1) ; extra == 'dev'
Requires-Dist: isort (==5.5.2) ; extra == 'dev'
Requires-Dist: mypy ; extra == 'dev'
Requires-Dist: pydocstyle ; extra == 'dev'
Requires-Dist: pylint (>=2.4.4) ; extra == 'dev'
Requires-Dist: pre-commit ; extra == 'dev'
Requires-Dist: notebook ; extra == 'dev'
Requires-Dist: matplotlib ; extra == 'dev'
Requires-Dist: seaborn ; extra == 'dev'
Requires-Dist: python-dotenv ; extra == 'dev'
Requires-Dist: papermill ; extra == 'dev'
Requires-Dist: jupytext ; extra == 'dev'
Requires-Dist: codecov ; extra == 'dev'
Requires-Dist: coverage ; extra == 'dev'
Requires-Dist: pytest-cov ; extra == 'dev'
Requires-Dist: requests-mock ; extra == 'dev'
Requires-Dist: pytest (>=4.0) ; extra == 'dev'
Requires-Dist: pytest-mock ; extra == 'dev'
Requires-Dist: pytest-xdist ; extra == 'dev'
Requires-Dist: moto[s3] ; extra == 'dev'
Provides-Extra: notebooks
Requires-Dist: notebook ; extra == 'notebooks'
Requires-Dist: matplotlib ; extra == 'notebooks'
Requires-Dist: seaborn ; extra == 'notebooks'
Requires-Dist: python-dotenv ; extra == 'notebooks'
Requires-Dist: papermill ; extra == 'notebooks'
Requires-Dist: jupytext ; extra == 'notebooks'
Provides-Extra: tests
Requires-Dist: codecov ; extra == 'tests'
Requires-Dist: coverage ; extra == 'tests'
Requires-Dist: pytest-cov ; extra == 'tests'
Requires-Dist: requests-mock ; extra == 'tests'
Requires-Dist: pytest (>=4.0) ; extra == 'tests'
Requires-Dist: pytest-mock ; extra == 'tests'
Requires-Dist: pytest-xdist ; extra == 'tests'
Requires-Dist: moto[s3] ; extra == 'tests'


bookshelf
=========

``bookshelf`` is how Climate Resource reuses datasets across projects


The ``bookshelf`` represents a shared collection of curated datasets or ``Books``. Each
``Book`` is a preprocessed, versioned dataset including the notebooks used to produce it.
As the underlying datasets or processing are updated, new ``Books`` can be created (with
an updated version). A single dataset may produce multiple ``Resources`` if different
representations are useful. These ``Books`` can be deployed to a shared ``Bookshelf`` so
that they are accessible by other users.

Users are able to use specific ``Books`` within other projects. The dataset and associated
metadata is fetched and cached locally. Specific versions of ``Books`` can also be pinned for
reproducibility purposes.

This repository contains the notebooks that are used to generate the ``Books``
as well as a CLI tool for managing these datasets.

This is a prototype and will likely change in future
