Metadata-Version: 2.1
Name: xdantic
Version: 0.0.2.dev0
Summary: A lightweight Python config library on top of Pydantic.
Author-email: Sebastian Lettner <sebastian.a.lettner@gmail.com>
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Dist: pydantic[dotenv]>=1.10.2
Requires-Dist: pyyaml>=6.0
Requires-Dist: mkdocs-material ; extra == "docs"
Requires-Dist: mkdocstrings[python-legacy]>=0.18 ; extra == "docs"
Requires-Dist: mkdocs-gen-files>=0.4.0 ; extra == "docs"
Requires-Dist: mkdocs-literate-nav>=0.6.0 ; extra == "docs"
Requires-Dist: pytest ; extra == "testing"
Requires-Dist: pytest-pep8 ; extra == "testing"
Requires-Dist: pytest-cov ; extra == "testing"
Requires-Dist: black==22.6.0 ; extra == "testing"
Requires-Dist: isort==5.8.0 ; extra == "testing"
Requires-Dist: flake8==4.0.1 ; extra == "testing"
Requires-Dist: pre-commit ; extra == "testing"
Requires-Dist: nbconvert~=7.2.2 ; extra == "testing"
Requires-Dist: jupyter~=1.0.0 ; extra == "testing"
Provides-Extra: docs
Provides-Extra: testing

# xdantic
Lightweight configuration library on top of PyDantic

## How to set up a local dev environment
- Clone repo
- Download & install Python 3.9 from official website: https://www.python.org/downloads/
- Check if you have installed the right Python version via Python --version / Python3 --version
- Create virtual environment via `Python3.9 -m venv <env_folder>` and activate your virtual environment via `source <env_folder>/bin/activate`
  - Usually we create your <env_folder> right under project root folder
- Install required build tools: `pip install --upgrade pip setuptools wheel flit`
  - If you don't have pip preinstalled, run `python get-pip.py`. More info from https://pip.pypa.io/en/stable/installation/
- Install dependencies: `PIP_FIND_LINKS=deps flit install -s --deps production --extras testing`
  -If new dependency needs to be added, you should define it in file `pyproject.toml`
- Install manually dependencies for xconfig : `pip install deps/xconfig-0.0.1.dev1.tar.gz`
- jarvis must have a `__init__.py` file in which there must be a version number in there
- Create empty folder data in root folder and create models and cache folders inside data folders

## How to build docs
To build the documentation locally, install the `doc` dependency group and run:

```
mkdocs build --site-dir build
```

## Tutorial

The [notebooks](./notebooks) folder contains a Jupyter notebooks that show examples of using xdantic.

## Tests

To run the test locally, install the `testing` dependency group and run:

```
pytest -s test
```
