You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: new-docs/source/index.rst
+26-21Lines changed: 26 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,40 +3,41 @@
3
3
Pydra
4
4
=====
5
5
6
-
Pydra is a lightweight Python dataflow engine for scientific analysis.
7
-
Although designed as a successor to Nipype_, Pydra is supports analytics in any domain.
8
-
Pydra helps build reproducible, scalable, reusable workflows that link processing tasks
9
-
implemented in Python or shell commands to be executed on distributed compute platforms.
10
-
11
-
The power of Pydra lies in ease of constructing workflows containing complex
12
-
multiparameter map-reduce operations in Python code (see :ref:`Design philosophy` for
13
-
the rationale behind its design).
6
+
Pydra is a lightweight dataflow engine written in Python. Although designed to succeed
7
+
Nipype_ in order to address the needs of the neuroimaging community, Pydra can be used
8
+
for analytics in any scientific domain. Pydra facilitates the design of reproducible,
9
+
scalable and robust workflows that can link diverse processing tasks implemented as
10
+
shell commands or Python functions.
14
11
15
12
**Key features:**
16
13
17
-
* Combine diverse tasks (`Python functions <./tutorial/3-python.html>`__ or `shell commands <./tutorial/4-shell.html>`__) into coherent `workflows <./tutorial/5-workflow.html>`__
18
-
* Concurrent execution on `choice of computing platform (e.g. workstation, SLURM, SGE, Dask, etc...) <./tutorial/2-advanced-execution.html#Workers>`__
14
+
* Combine diverse tasks (`Python functions <./tutorial/3-python.html>`__ or `shell commands <./tutorial/4-shell.html>`__) into coherent, robust `workflows <./tutorial/5-workflow.html>`__
19
15
* Dynamic workflow construction using Python code (see :ref:`Dynamic construction`)
16
+
* Concurrent execution on `choice of computing platform (e.g. workstation, SLURM, SGE, Dask, etc...) <./tutorial/2-advanced-execution.html#Workers>`__
20
17
* Map-reduce-like semantics (see :ref:`Splitting and combining`)
21
18
* Global caching to reduce recomputation (see :ref:`Caches and hashes`)
22
19
* Tasks can be executed in separate software environments, e.g. containers (see :ref:`Software environments`)
23
20
* Strong type-checking, including file types, before execution (see :ref:`Typing and file-formats`)
24
21
22
+
See :ref:`Design philosophy` for more details on the rationale behind Pydra's design.
23
+
25
24
26
25
Installation
27
26
------------
28
27
29
-
Pydra itself is a pure-Python package, which has only a handful of dependencies,
30
-
therefore, it is straightforward to install via pip for Python >= 3.11
28
+
Pydra is implemented purely in Python and has a small number of dependencies
29
+
It is easy to install via pip for Python >= 3.11 (preferably within a
30
+
`virtual environment`_):
31
31
32
32
.. code-block:: bash
33
33
34
34
$ pip install pydra
35
35
36
-
Pre-designed tasks are available under the `pydra.tasks.*` package namespace. These tasks
37
-
are implemented within separate packages that are typically specific to a given
38
-
shell-command toolkit such as FSL_, AFNI_ or ANTs_, or a collection of related
39
-
tasks/workflows (e.g. `niworkflows`_). Pip can be used to install these packages as well:
36
+
Pre-designed tasks are available under the `pydra.tasks.*` namespace. These tasks
37
+
are typically implemented within separate packages that are specific to a given
38
+
shell-command toolkit, such as FSL_ (*pydra-fsl*), AFNI_ (*pydra-afni*) or
39
+
ANTs_ (*pydra-ants*), or a collection of related tasks/workflows, such as Niworkflows
40
+
(*pydra-niworkflows*). Pip can be used to install these extension packages as well:
40
41
41
42
.. code-block:: bash
42
43
@@ -50,13 +51,15 @@ to run them (see :ref:`Software environments`).
50
51
Tutorials and notebooks
51
52
-----------------------
52
53
53
-
The following tutorials provide a step-by-step guide to using Pydra.
54
-
They can be read in any order, but it is recommended to start with :ref:`Getting started`.
55
-
The tutorials are implemented as Jupyter notebooks, which can be downloaded and run locally
54
+
The following tutorials provide a step-by-step guide to using Pydra. They can be
55
+
studied in any order, but it is recommended to start with :ref:`Getting started` and
56
+
step through the list from there.
57
+
58
+
The tutorials are written in Jupyter notebooks, which can be downloaded and run locally
56
59
or run online using the |Binder| button within each tutorial.
57
60
58
61
If you decide to download the notebooks and run locally, be sure to install the necessary
59
-
dependencies with
62
+
dependencies (ideally within a `virtual environment`_):
60
63
61
64
.. code-block:: bash
62
65
@@ -74,7 +77,8 @@ Learn how to execute existing tasks (including workflows) on different systems
74
77
Design
75
78
~~~~~~
76
79
77
-
Learn how to design your own tasks
80
+
Learn how to design your own tasks, wrapped shell commands or Python functions, or
81
+
workflows,
78
82
79
83
* :ref:`Python-tasks`
80
84
* :ref:`Shell-tasks`
@@ -171,5 +175,6 @@ See the full reference documentation for Pydra
0 commit comments