Metadata-Version: 2.1
Name: sdRDM
Version: 0.2.1
Summary: Software-driven RDM converts markdown data models into powerful objects that can be serialized to JSON, XML, YAML and HDF5
License: MIT
Author: Jan Range
Author-email: range.jan@web.de
Requires-Python: >=3.9,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: anytree (>=2.12.1,<3.0.0)
Requires-Dist: astropy (>=6.0.0,<7.0.0)
Requires-Dist: autoflake (==2.0.0)
Requires-Dist: bigtree (>=0.15.4,<0.16.0)
Requires-Dist: black (>=23.12.1,<24.0.0)
Requires-Dist: dotted-dict (==1.1.3)
Requires-Dist: email-validator (>=2.1.0.post1,<3.0.0)
Requires-Dist: gitpython (>=3.1.41,<4.0.0)
Requires-Dist: jinja2 (>=3.1.3,<4.0.0)
Requires-Dist: lxml (>=5.1.0,<6.0.0)
Requires-Dist: markdown-it-py (>=3.0.0,<4.0.0)
Requires-Dist: nob (>=0.8.2,<0.9.0)
Requires-Dist: numpy (>=1.26.3,<2.0.0)
Requires-Dist: pandas (>=2.1.4,<3.0.0)
Requires-Dist: pydantic (>=2.5.3,<3.0.0)
Requires-Dist: pydantic-xml (>=2.7.0,<3.0.0)
Requires-Dist: pyyaml (>=6.0.1,<7.0.0)
Requires-Dist: rich (>=13.7.0,<14.0.0)
Requires-Dist: toml (>=0.10.2,<0.11.0)
Requires-Dist: typer (>=0.9.0,<0.10.0)
Requires-Dist: validators (>=0.22.0,<0.23.0)
Description-Content-Type: text/markdown

<h1 align="center">
  Software-Driven RDM</br>
  <a href="https://badge.fury.io/py/sdRDM"><img src="https://badge.fury.io/py/sdRDM.svg" alt="PyPI version" height="18"></a>
  <img src="https://img.shields.io/badge/python-3.9|3.10|3.11-blue.svg" alt="Build Badge">
  <img src="https://github.com/JR-1991/software-driven-rdm/actions/workflows/tests.yml/badge.svg" alt="Build Badge">
</h1>
<p align="center">
With Software-driven Research Data Management (sdRDM), you can confidently specify data models using verbose Markdown documents and effortlessly convert them into powerful Python objects that can be serialized into any data exchange format.
</p>

### 🏎 Features

- Generate and maintain RDM APIs via readable specifications in __Markdown__
- Data Models defined in sdRDM can be exported to __any format__
- Link your data model to any other data model and setup __workflows__

## ⚡️ Quick start

Get started with by running the following command

```bash
# Using PIP
python -m pip install sdRDM
```

Or build by source

```bash
git clone https://github.com/JR-1991/software-driven-rdm.git
cd software-driven-rdm
python3 setup.py install
```

## 📖 Documentation and more examples

In the making! 🐛

## 📦 Other sdRDM-related repositories

* [Code generator for GitHub Actions](https://github.com/JR-1991/generate-sdrdm-api/tree/main)
: Deposit your Markdown-based data model in a GitHub repository and automatically generate a Python API upon changes.
* [Create a database from a Markdown-based data model](https://github.com/JR-1991/sdrdm-database)
: Use your data model to create a relational database and interact with it via a Python API.

## ⚠️ License

`sdRDM` is free and open-source software licensed under the MIT License.

