Mercurial > hg > orthanc-book
annotate Sphinx/source/contributing.rst @ 660:a6e371768a70
dicom-as-json
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 29 Apr 2021 12:41:31 +0200 |
parents | a8925284df0b |
children | 9461a56f225f |
rev | line source |
---|---|
24 | 1 .. _contributing: |
2 | |
481
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
3 |
0 | 4 Contributing to Orthanc |
5 ======================= | |
6 | |
481
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
7 .. toctree:: |
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
8 :hidden: |
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
9 |
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
10 unanswered-forum.rst |
562 | 11 |
12 | |
13 .. note:: Here are the main features we would like to get soon | |
14 implemented as free and open-source code in the Orthanc | |
15 ecosystem. To make this happen, **we need your financial | |
16 support**! | |
17 | |
18 * **Orthanc Core**: | |
19 | |
566 | 20 - :ref:`Improved Web user interface <improving-interface>` |
21 | |
562 | 22 * **Stone Web viewer**: |
23 | |
24 - Annotations/measurements | |
25 - Internationalization/translations | |
26 - MPR volume rendering | |
566 | 27 - Viewer dedicated to nuclear medicine and radiotherapy |
571 | 28 - Rendering of DICOM GSPS |
563 | 29 |
30 * **Plugins**: | |
31 | |
32 - Support of MSSQL databases | |
569
796136e5f4b3
contribute to worklist
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
566
diff
changeset
|
33 - :ref:`Worklist plugin <worklist>` to interface with REST API, HL7 or Myrth |
562 | 34 |
35 Please `get in touch with Osimis <info@osimis.io>`__ if you | |
36 want to sponsor these developments. | |
481
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
37 |
0 | 38 If you find Orthanc useful and wish to contribute to its development, |
39 here are some tasks you can take in charge that would greatly help us: | |
40 | |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
41 * **Non-coding tasks**: |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
42 |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
43 - Use Orthanc in the real life. ;) |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
44 - Advertise about Orthanc, notably on social networks (we are active |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
45 on `Facebook <https://www.facebook.com/orthancdicom/>`__ and |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
46 `Twitter <https://twitter.com/OrthancServer>`__). |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
47 - Answer our `survey |
358
011b01ccf52d
fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
302
diff
changeset
|
48 <https://www.orthanc-server.com/static.php?page=blog#survey>`_. |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
49 - Improve and translate the `Wikipedia pages |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
50 <https://en.wikipedia.org/wiki/Orthanc_(software)>`_ about Orthanc. |
174 | 51 - Cite the `reference paper about Orthanc |
52 <https://link.springer.com/article/10.1007/s10278-018-0082-y>`__ | |
53 in your research work. | |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
54 - Answer questions posted to the `mailing list |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
55 <https://groups.google.com/forum/#!forum/orthanc-users>`_. |
481
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
56 |
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
57 - **Important**: A page list the :ref:`old questions that are not |
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
58 fully answered yet <unanswered_forum>`. Consider answering these |
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
59 topics too! |
4f076a3b9934
unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
480
diff
changeset
|
60 |
269 | 61 - Improve the text of the `Orthanc Book and REST API documentation |
449 | 62 <https://hg.orthanc-server.com/orthanc-book/file/default>`__ (check |
361 | 63 out the instructions provided in the `README file |
449 | 64 <https://hg.orthanc-server.com/orthanc-book/file/default/README.md>`__, |
361 | 65 and send us a :ref:`simple patch <hg-patch>`). |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
66 - Provide documentation and use cases (inside the dedicated `GitHub |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
67 repository <https://github.com/jodogne/OrthancContributed>`_, via |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
68 pull requests). |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
69 - Index external contributions inside the `Links.md |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
70 <https://github.com/jodogne/OrthancContributed/blob/master/Links.md>`_ |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
71 file. |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
72 |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
73 * **Maintenance tasks**: |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
74 |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
75 - Report problems together with sample DICOM images and possible |
445
987fbbc2b59e
leaving bitbucket wrt. bug tracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
361
diff
changeset
|
76 workarounds on the dedicated `issue tracker |
987fbbc2b59e
leaving bitbucket wrt. bug tracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
361
diff
changeset
|
77 <http://bugs.orthanc-server.com/>`_. |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
78 - Package Orthanc and its associated plugins for more UNIX or |
473 | 79 GNU/Linux distributions (e.g. Ubuntu PPA, RHEL/`EPEL |
80 <https://fedoraproject.org/wiki/EPEL>`__, CentOS, openSUSE...). | |
81 - Take ownership of the now-orphaned `Fedora package | |
82 <https://src.fedoraproject.org/rpms/orthanc>`__. | |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
83 - Share your maintenance scripts or sample code inside the "`Orthanc Contributed |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
84 <https://github.com/jodogne/OrthancContributed>`_" public GitHub |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
85 repository, via pull requests. |
473 | 86 - Help with the integration of Orthanc together with our friend free |
87 and open-source projects, notably `GNU Health | |
88 <https://www.orthanc-server.com/resources/orthanccon2019/GNUHealthCon-02-AxelBraun.pdf>`__, | |
89 but also `OpenEMR | |
90 <https://community.open-emr.org/t/project-pacs-server-integration/13706/15>`__, | |
91 `GNUmed <https://en.wikipedia.org/wiki/GNUmed>`__... | |
92 | |
0 | 93 |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
94 * **Coding tasks**: |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
95 |
204 | 96 - The Orthanc project will happily accept patches in the core of |
97 Orthanc and in its associated official plugins. Please read the | |
98 :ref:`dedicated FAQ entry <cla>`. | |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
99 - Interface Orthanc with other software (e.g. 3D Slicer, |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
100 Matlab/Octave, Python, Horos, dicompyler...). Check the `already |
358
011b01ccf52d
fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
302
diff
changeset
|
101 supported frameworks <https://www.orthanc-server.com/static.php?page=resources>`_. |
473 | 102 - Develop :ref:`C/C++/Python plugins extending the Orthanc core <plugins>`. Here are some ideas |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
103 of possible plugins: |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
104 |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
105 + Create a :ref:`more advanced Web interface |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
106 <improving-interface>` than the built-in Orthanc Explorer. |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
107 + Extend the :ref:`sample modality worklist plugin <worklist>` so |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
108 that it manages the worklists (i.e. add/remove items) with a |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
109 REST API or HL7 messages, instead of reading them from some |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
110 folder on the filesystem. |
473 | 111 + Conversion to/from `NIfTI |
112 <https://www.sciencedirect.com/science/article/abs/pii/S0165027016300073?via%3Dihub>`__ | |
113 and/or `BIDS | |
114 <https://en.wikipedia.org/wiki/Brain_Imaging_Data_Structure>`__, | |
115 notably for neuroimaging. | |
479 | 116 + `Encapsulate a video into a DICOM file |
117 <https://stackoverflow.com/questions/28698888/creating-h-264-avc-dicom-file-with-dcmtk/28737338#28737338>`__ | |
480 | 118 by calling some REST route, similarly to the |
119 ``/tools/create-dicom`` :ref:`route to encapsulate PDF <pdf>`. | |
496 | 120 + Similarly to video and PDF (cf. item above), `wrap/unwrap a STL |
121 (3D mesh) to/from a DICOM file | |
122 <http://dicom.nema.org/medical/dicom/2020b/output/chtml/part03/sect_A.85.html>`__ | |
123 by calling some REST route. This is notably useful for dentistry | |
124 (dental implants) or orthopaedics, yet even cutting-edge | |
125 research about 3D-printing of organs. In complement, provide a | |
126 `FreeCAD extension | |
127 <https://twitter.com/sjodogne/status/1299632772915625984>`__ to | |
128 import/export such STL files from/to Orthanc. | |
597 | 129 + Create a plugin to edit DICOM files (add, update or remove DICOM tags). |
598 | 130 + Create samples of :ref:`Python plugins <python-plugin>` to take |
131 care of HL7 messages, especially for :ref:`merging patients | |
132 <split-merge>` (which is a `typical HL7 event | |
133 <https://twitter.com/ZeClint/status/1192086039160086529?s=20>`__ | |
134 to be handled by the PACS, not by the RIS). Reference: Events | |
135 ``Axx`` of Chapter 3 ("Patient Administration") in the HL7 v2.9 | |
136 specification. | |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
137 + Have a look at the TODO file containing our `official roadmap |
360 | 138 <https://hg.orthanc-server.com/orthanc/file/default/TODO>`__. |
473 | 139 |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
140 - Always remember that he **recommended way of contributing to the |
474 | 141 source code of Orthanc is by creating C/C++/Python plugins, or by |
142 creating external software that use the REST API**. If the current | |
143 plugin SDK is insufficient for you to develop some feature as a | |
144 plugin, do not hesitate to request an extension to the Orthanc SDK | |
145 on the `mailing list | |
104
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
146 <https://groups.google.com/forum/#!forum/orthanc-users>`_. |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
147 |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
148 |
09b0a61f1942
improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
86
diff
changeset
|
149 * **Financial support**: |
0 | 150 |
475
5202bb6984dc
links to lify and OrthancToolsJS
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
474
diff
changeset
|
151 - Osimis provides `support packs and professional development |
5202bb6984dc
links to lify and OrthancToolsJS
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
474
diff
changeset
|
152 services <https://www.osimis.io/en/services.html>`__ around the |
5202bb6984dc
links to lify and OrthancToolsJS
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
474
diff
changeset
|
153 Orthanc ecosystem and, more generally, around medical |
5202bb6984dc
links to lify and OrthancToolsJS
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
474
diff
changeset
|
154 imaging. Buying such professional services is the best way to make |
5202bb6984dc
links to lify and OrthancToolsJS
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
474
diff
changeset
|
155 the Orthanc project sustainable in the long term. |