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