Metadata-Version: 2.1
Name: chris-plugin
Version: 0.3.2
Summary: ChRIS plugin helper
Home-page: https://github.com/FNNDSC/chris_plugin
Author: Jennings Zhang
Author-email: dev@babyMRI.org
License: MIT
Project-URL: Documentation, https://fnndsc.github.io/chris_plugin/
Project-URL: Source, https://github.com/FNNDSC/chris_plugin
Project-URL: Tracker, https://github.com/FNNDSC/chris_plugin/issues
Classifier: Development Status :: 1 - Planning
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
Requires-Python: >= 3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: importlib-metadata ; python_version < "3.10"
Provides-Extra: dev
Requires-Dist: pytest ~=7.2 ; extra == 'dev'
Requires-Dist: pytest-mock ~=3.10 ; extra == 'dev'
Requires-Dist: pytest-cov ~=4.0.0 ; extra == 'dev'
Provides-Extra: none

# Python _ChRIS_ Plugin Support

[![codecov](https://codecov.io/gh/FNNDSC/chris_plugin/branch/master/graph/badge.svg?token=TG3CEHU2H4)](https://codecov.io/gh/FNNDSC/chris_plugin)
[![.github/workflows/test.yml](https://github.com/FNNDSC/chris_plugin/actions/workflows/test.yml/badge.svg)](https://github.com/FNNDSC/chris_plugin/actions/workflows/test.yml)
[![PyPI](https://img.shields.io/pypi/v/chris_plugin)](https://pypi.org/project/chris_plugin/)
[![License - MIT](https://img.shields.io/pypi/l/chris_plugin)](https://github.com/FNNDSC/chris_plugin/blob/master/LICENSE)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)

_ChRIS_ is a platform for scientific and medical applications.
https://chrisproject.org/

This repository provides `chris_plugin`, a Python utility library
for writing programs in Python which can run on _ChRIS_.

## Getting Started

Have an existing Python program? See
[HOW TO: Convert an existing Python app](https://github.com/FNNDSC/chris_plugin/wiki/HOW-TO:-Convert-an-existing-Python-app)
into a _ChRIS_ _ds_ plugin.

If you're creating a **new** program,
you can start from this template:
https://github.com/FNNDSC/python-chrisapp-template

Examples can be found in [./examples](./examples).

## Usage

After developing a plugin, use the command `chris_plugin_info`
to produce a JSON description of your *ChRIS* plugin.

```shell
chris_plugin_info --dock-image {registry}/{repo}/{name}:{version} [module_name]
```

If `module_name` is not given, then `chris_plugin_info`
will automatically discover your *ChRIS* plugin.

## Development Goals

`chris_plugin` strives to have zero-dependencies and compatible with Python 3.8 through 3.12.
