annotate Sphinx/source/contributing.rst @ 496:1fdbf5b89b80

stl
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 31 Aug 2020 08:37:23 +0200
parents 4f076a3b9934
children e9d8c7e5afbd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
24
25fa874803ab plugins inside book
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
1 .. _contributing:
25fa874803ab plugins inside book
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
2
481
4f076a3b9934 unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 480
diff changeset
3
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
4 Contributing to Orthanc
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
5 =======================
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
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
4f076a3b9934 unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 480
diff changeset
11
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
12 If you find Orthanc useful and wish to contribute to its development,
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
13 here are some tasks you can take in charge that would greatly help us:
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
14
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
15 * **Non-coding tasks**:
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
16
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
17 - Use Orthanc in the real life. ;)
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
18 - Advertise about Orthanc, notably on social networks (we are active
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
19 on `Facebook <https://www.facebook.com/orthancdicom/>`__ and
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
20 `Twitter <https://twitter.com/OrthancServer>`__).
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
21 - Answer our `survey
358
011b01ccf52d fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 302
diff changeset
22 <https://www.orthanc-server.com/static.php?page=blog#survey>`_.
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
23 - Improve and translate the `Wikipedia pages
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
24 <https://en.wikipedia.org/wiki/Orthanc_(software)>`_ about Orthanc.
174
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 152
diff changeset
25 - Cite the `reference paper about Orthanc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 152
diff changeset
26 <https://link.springer.com/article/10.1007/s10278-018-0082-y>`__
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 152
diff changeset
27 in your research work.
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
28 - Answer questions posted to the `mailing list
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
29 <https://groups.google.com/forum/#!forum/orthanc-users>`_.
481
4f076a3b9934 unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 480
diff changeset
30
4f076a3b9934 unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 480
diff changeset
31 - **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
32 fully answered yet <unanswered_forum>`. Consider answering these
4f076a3b9934 unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 480
diff changeset
33 topics too!
4f076a3b9934 unanswered-forum.rst
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 480
diff changeset
34
269
182f4fdeeb47 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 246
diff changeset
35 - Improve the text of the `Orthanc Book and REST API documentation
449
2922fb1bd65e fix links
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 445
diff changeset
36 <https://hg.orthanc-server.com/orthanc-book/file/default>`__ (check
361
84e3a2612c36 links to hg
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 360
diff changeset
37 out the instructions provided in the `README file
449
2922fb1bd65e fix links
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 445
diff changeset
38 <https://hg.orthanc-server.com/orthanc-book/file/default/README.md>`__,
361
84e3a2612c36 links to hg
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 360
diff changeset
39 and send us a :ref:`simple patch <hg-patch>`).
473
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
40 - Pursue the `OpenAPI documentation
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
41 <https://api.orthanc-server.com/>`__, that is still
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
42 work-in-progress (`check out its source code
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
43 <https://hg.orthanc-server.com/orthanc-book/file/default/OpenAPI>`__).
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
44 - Provide documentation and use cases (inside the dedicated `GitHub
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
45 repository <https://github.com/jodogne/OrthancContributed>`_, via
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
46 pull requests).
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
47 - Index external contributions inside the `Links.md
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
48 <https://github.com/jodogne/OrthancContributed/blob/master/Links.md>`_
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
49 file.
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
50
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
51 * **Maintenance tasks**:
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
52
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
53 - 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
54 workarounds on the dedicated `issue tracker
987fbbc2b59e leaving bitbucket wrt. bug tracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 361
diff changeset
55 <http://bugs.orthanc-server.com/>`_.
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
56 - Package Orthanc and its associated plugins for more UNIX or
473
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
57 GNU/Linux distributions (e.g. Ubuntu PPA, RHEL/`EPEL
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
58 <https://fedoraproject.org/wiki/EPEL>`__, CentOS, openSUSE...).
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
59 - Take ownership of the now-orphaned `Fedora package
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
60 <https://src.fedoraproject.org/rpms/orthanc>`__.
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
61 - Share your maintenance scripts or sample code inside the "`Orthanc Contributed
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
62 <https://github.com/jodogne/OrthancContributed>`_" public GitHub
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
63 repository, via pull requests.
473
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
64 - Help with the integration of Orthanc together with our friend free
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
65 and open-source projects, notably `GNU Health
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
66 <https://www.orthanc-server.com/resources/orthanccon2019/GNUHealthCon-02-AxelBraun.pdf>`__,
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
67 but also `OpenEMR
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
68 <https://community.open-emr.org/t/project-pacs-server-integration/13706/15>`__,
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
69 `GNUmed <https://en.wikipedia.org/wiki/GNUmed>`__...
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
70
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
71
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
72 * **Coding tasks**:
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
73
204
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 180
diff changeset
74 - The Orthanc project will happily accept patches in the core of
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 180
diff changeset
75 Orthanc and in its associated official plugins. Please read the
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 180
diff changeset
76 :ref:`dedicated FAQ entry <cla>`.
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
77 - Interface Orthanc with other software (e.g. 3D Slicer,
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
78 Matlab/Octave, Python, Horos, dicompyler...). Check the `already
358
011b01ccf52d fixing external hyperlinks
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 302
diff changeset
79 supported frameworks <https://www.orthanc-server.com/static.php?page=resources>`_.
473
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
80 - 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
81 of possible plugins:
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
82
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
83 + Create a :ref:`more advanced Web interface
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
84 <improving-interface>` than the built-in Orthanc Explorer.
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
85 + Extend the :ref:`sample modality worklist plugin <worklist>` so
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
86 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
87 REST API or HL7 messages, instead of reading them from some
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
88 folder on the filesystem.
473
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
89 + Conversion to/from `NIfTI
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
90 <https://www.sciencedirect.com/science/article/abs/pii/S0165027016300073?via%3Dihub>`__
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
91 and/or `BIDS
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
92 <https://en.wikipedia.org/wiki/Brain_Imaging_Data_Structure>`__,
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
93 notably for neuroimaging.
479
79dffd7fb0fe video plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 477
diff changeset
94 + `Encapsulate a video into a DICOM file
79dffd7fb0fe video plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 477
diff changeset
95 <https://stackoverflow.com/questions/28698888/creating-h-264-avc-dicom-file-with-dcmtk/28737338#28737338>`__
480
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 479
diff changeset
96 by calling some REST route, similarly to the
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 479
diff changeset
97 ``/tools/create-dicom`` :ref:`route to encapsulate PDF <pdf>`.
496
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 481
diff changeset
98 + Similarly to video and PDF (cf. item above), `wrap/unwrap a STL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 481
diff changeset
99 (3D mesh) to/from a DICOM file
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 481
diff changeset
100 <http://dicom.nema.org/medical/dicom/2020b/output/chtml/part03/sect_A.85.html>`__
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 481
diff changeset
101 by calling some REST route. This is notably useful for dentistry
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 481
diff changeset
102 (dental implants) or orthopaedics, yet even cutting-edge
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 481
diff changeset
103 research about 3D-printing of organs. In complement, provide a
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 481
diff changeset
104 `FreeCAD extension
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 481
diff changeset
105 <https://twitter.com/sjodogne/status/1299632772915625984>`__ to
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 481
diff changeset
106 import/export such STL files from/to Orthanc.
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
107 + Have a look at the TODO file containing our `official roadmap
360
d217af5e6cb3 links to hg
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 358
diff changeset
108 <https://hg.orthanc-server.com/orthanc/file/default/TODO>`__.
473
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
109
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
110 - Develop a way to "mount" the content of one Orthanc server as a
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
111 network drive through the :ref:`REST API <rest>`, using either
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
112 `FTP <https://en.wikipedia.org/wiki/File_Transfer_Protocol>`__,
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
113 `FUSE <https://en.wikipedia.org/wiki/Filesystem_in_Userspace>`__
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
114 (through `Samba
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
115 <https://en.wikipedia.org/wiki/Samba_(software)>`__ for Windows)
c7b2424e4b52 contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 456
diff changeset
116 or `WebDAV <https://en.wikipedia.org/wiki/WebDAV>`__.
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
117 - Always remember that he **recommended way of contributing to the
474
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 473
diff changeset
118 source code of Orthanc is by creating C/C++/Python plugins, or by
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 473
diff changeset
119 creating external software that use the REST API**. If the current
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 473
diff changeset
120 plugin SDK is insufficient for you to develop some feature as a
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 473
diff changeset
121 plugin, do not hesitate to request an extension to the Orthanc SDK
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 473
diff changeset
122 on the `mailing list
104
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
123 <https://groups.google.com/forum/#!forum/orthanc-users>`_.
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
124
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
125
09b0a61f1942 improved contributing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 86
diff changeset
126 * **Financial support**:
0
901e8961f46e initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
127
475
5202bb6984dc links to lify and OrthancToolsJS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 474
diff changeset
128 - Osimis provides `support packs and professional development
5202bb6984dc links to lify and OrthancToolsJS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 474
diff changeset
129 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
130 Orthanc ecosystem and, more generally, around medical
5202bb6984dc links to lify and OrthancToolsJS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 474
diff changeset
131 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
132 the Orthanc project sustainable in the long term.