Metadata-Version: 2.4
Name: cfdb-vars
Version: 0.2.1
Summary: variable definitions for cfdb
Project-URL: Documentation, https://mullenkamp.github.io/cfdb-vars/
Project-URL: Source, https://github.com/mullenkamp/cfdb-vars
Author-email: mullenkamp <mullenkamp1@gmail.com>
License-File: LICENSE
Classifier: Programming Language :: Python :: 3 :: Only
Requires-Python: >=3.10
Requires-Dist: cfdb-models
Requires-Dist: msgspec
Description-Content-Type: text/markdown

# cfdb-vars

<p align="center">
    <em>variable definitions for cfdb</em>
</p>

[![build](https://github.com/mullenkamp/cfdb-vars/workflows/Build/badge.svg)](https://github.com/mullenkamp/cfdb-vars/actions)
[![codecov](https://codecov.io/gh/mullenkamp/cfdb-vars/branch/main/graph/badge.svg)](https://codecov.io/gh/mullenkamp/cfdb-vars)
[![PyPI version](https://badge.fury.io/py/cfdb-vars.svg)](https://badge.fury.io/py/cfdb-vars)

---

**Source Code**: <a href="https://github.com/mullenkamp/cfdb-vars" target="_blank">https://github.com/mullenkamp/cfdb-vars</a>

---
## Overview
The purpose of this package is to separate the variable metadata from the main cfdb package so that additional variables can be added without updating the version of the cfdb package. This package will have the data model for variables defined in msgspec and the variable data defined in python files (one initially).


## Development

### Setup environment

We use [UV](https://docs.astral.sh/uv/) to manage the development environment and production build. 

```bash
uv sync
```

### Run unit tests

You can run all the tests with:

```bash
uv run pytest
```

### Format the code

Execute the following commands to apply linting and check typing:

```bash
uv run ruff check .
uv run black --check --diff .
uv run mypy --install-types --non-interactive cfdb_vars
```

To auto-format:

```bash
uv run black .
uv run ruff check --fix .
```

## License

This project is licensed under the terms of the Apache Software License 2.0.
