scipion-em / scipion-pyworkflow

Underlying pyworkflow module for the Scipion framework
GNU General Public License v3.0
6 stars 5 forks source link
core

.. image:: https://img.shields.io/pypi/v/scipion-pyworkflow.svg :target: https://pypi.python.org/pypi/scipion-pyworkflow :alt: PyPI release

.. image:: https://sonarcloud.io/api/project_badges/measure?project=scipion-em_scipion-pyworkflow&metric=alert_status :alt: Quality Gate Status :target: https://sonarcloud.io/summary/new_code?id=scipion-em_scipion-pyworkflow

.. image:: https://img.shields.io/sonar/quality_gate/scipion-em_scipion-pyworkflow?server=https%3A%2F%2Fsonarcloud.io :target: https://sonarcloud.io/dashboard?id=scipion-em_scipion-pyworkflow :alt: SonarCloud quality gate

.. image:: https://img.shields.io/pypi/l/scipion-pyworkflow.svg :target: https://pypi.python.org/pypi/scipion-pyworkflow :alt: License

.. image:: https://img.shields.io/pypi/pyversions/scipion-pyworkflow.svg :target: https://pypi.python.org/pypi/scipion-pyworkflow :alt: Supported Python versions

.. image:: https://img.shields.io/pypi/dm/scipion-pyworkflow :target: https://pypi.python.org/pypi/scipion-pyworkflow :alt: Downloads

.. image:: https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg :alt: Contributor Covenant :target: https://www.contributor-covenant.org/version/2/0/code_of_conduct/

pyworkflow

pyworkflow is a simple workflow platform used in scientific applications. It has been initially developed within the Scipion framework for image processing in Electron Microscopy.

pyworkflow allows you to define a working Domain by defining the following group of classes:

Development

To install pyworkflow for development purposes, one can do:

.. code-block:: bash

# Create a clean virtual environment
conda create -n scipion python=3.8
conda activate
git clone https://github.com/scipion-em/scipion-pyworkflow.git
cd scipion-pyworkflow
pip install -e .

Running tests

.. code-block:: bash

conda activate scipion
cd scipion-pyworkflow
export SCIPION_DOMAIN="pyworkflowtests/tests/mock_domain"
python -m unittest discover

# Simple project GUI can be shown after running tests:
python pyworkflow/apps/pw_project.py TestProtocolOutputs

All test projects are located in ~/ScipionUserData/Tests/

API documentation

https://scipion-em.github.io/docs/release-3.0.0/api/pyworkflow/pyworkflow.html