Metadata-Version: 2.1
Name: soil-sdk
Version: 0.6.8.dev2
Summary: SOIL Software Development Kit
Home-page: https://developer.amalfianalytics.com/
Author: Amalfi Analytics
Author-email: info@amalfianalytics.com
Requires-Python: >=3.11
Description-Content-Type: text/markdown; charset=UTF-8
License-File: AUTHORS
Requires-Dist: requests (>=2.28.2)
Requires-Dist: pyyaml (>=5.3.0)
Requires-Dist: PyJWT (>=2.6.0)
Requires-Dist: numpy (>=1.24.2)
Requires-Dist: pandas (>=1.5.3)
Provides-Extra: dev
Requires-Dist: pylint (>=2.16) ; extra == 'dev'
Requires-Dist: coverage (>=7) ; extra == 'dev'
Requires-Dist: pre-commit (>=3) ; extra == 'dev'
Requires-Dist: pydoc-markdown (>=4.6.4) ; extra == 'dev'
Requires-Dist: types-PyYAML (>=4.6.4) ; extra == 'dev'
Requires-Dist: types-requests (>=2.28.11.15) ; extra == 'dev'
Requires-Dist: pbr (>=5.11.1) ; extra == 'dev'
Requires-Dist: pyright (>=1.1.298) ; extra == 'dev'

# SOIL SDK

The SOIL SDK allows users to develop and test applications that run on top of SOIL and modules and data structures that run in it.

# Documentation

The main documentation page is here: [https://developer.amalfianalytics.com/](https://developer.amalfianalytics.com/)


## Install development dependencies
```
pip install -e .[dev]
```

## Local install
```
pip install -e .
```

## Build Documentation

```
cd docs/website
yarn install
yarn build
```

Update autogenerated sdk documentation
```
cd ../..
pydoc-markdown
```

Update autogenerated library documentation
```
pydoc-markdown --search-path $LIBRARY_PATH/ehra pydoc-markdown-library.yml
```

## Development

Local install:
```
pip install .
```



### Test
```
pre-commit run --all-files
```


# Roadmap
**Done**
* Run pipelines - Done
* Upload modules and data structures to the cloud - Done
* Upload data - Done
* soil cli with operations: login, init and run
* Logging API - Done
* Documentation - Done
* Expose parallelization API (be able to split modules in tasks)
* Federated learning API

**Upcoming**

* Multiple soil apps in the same machine.
* Autoinstall server dependencies (remote_requirements)

# Similar tools

* https://github.com/pditommaso/awesome-pipeline
* https://snakemake.readthedocs.io/en/stable/index.html
* https://workflowhub.org/

