Skip to content

DHARPA-Project/kiara

PyPI status PyPI version PyPI pyversions Build Status Coverage Status Code style

kiara

A data-centric workflow orchestration framework.

Description

Kiara is the data orchestration engine developed by the DHARPA project. It uses a modular approach to let users re-use tried and tested data orchestration pipelines, as well as create new ones from existing building blocks. It also helps you manage your research data, and augment it with automatically-, semi-automatically-, and manually- created metadata. Most of this is not yet implemented.

Development

Requirements

Check out the source code & enter the project directory

git clone https://github.com/DHARPA-Project/kiara.git
cd kiara

Prepare development environment

The recommended way to setup a development environment is to use uv. Check out their install instructions.

Once you have uv installed, you can either run kiara using the uv run command:

uv run kiara module list

or, activate the virtual environment and run kiara directly:

uv sync  # to make sure the virtualenv exists (and is up to date)
source .venv/bin/activate
kiara module list

Running pre-defined development-related tasks

The included Makefile file includes some useful tasks that help with development. This requires uv and the make tool to be installed, which should be the case for Linux & Mac OS X systems.

  • make test: runs the unit tests
  • make mypy: run mypy checks
  • make lint: run the ruff linter on the source code
  • make format: run the ruff formatter on the source code (similar to black)
  • make docs: build the documentation (into build folder)
  • make docs-serve: serve the documentation (on port 8000)

Alternatively, if you don't have the make command available, you can use uv directly to run those tasks:

  • uv run pytest tests
  • uv run mypy src/
  • uv run ruff check --fix src/
  • uv run ruff format src/

Copyright & license

This project is MPL v2.0 licensed, for the license text please check the LICENSE file in this repository.

  • Copyright (c) 2021, 2022 DHARPA project
  • Copyright (c) 2021, 2022 Markus Binsteiner

About

Data orchestration and management.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •