QIICR Developer Orientation - QIICR/ProjectIssuesAndWiki GitHub Wiki

Accounts and lists

Make sure you do the following:

Skills

You will need to develop new functionality in 3D Slicer and related tools/toolkits.

Make sure you are familiar with 3D Slicer from the user perspective first. 3D Slicer General Introduction tutorials and practice make a good start.

Once you are familiar with the Slicer user interface ...

  • This is the main starting point for the new developers: http://wiki.slicer.org/slicerWiki/index.php/Documentation/Nightly/Developers
  • build Slicer on your platform, following the instructions linked from the page above (you may not need it if you do all the development in Python, but it's a good practice, and most likely you will need C++ for some things in QIICR)
  • get started with the development aspects. 3D Slicer Developer tutorials and a lot of practice should help. Hint: complete the challenges listed in the end of this tutorial to convince yourself you are on your path to becoming a Slicer hacker! Tell us at the bi-weekly QIICR hangout about the progress and challenges you encountered!
  • if you plan to develop Command Line Modules (CLIs) only, you don't need to go over the Python tutorial. There is a CLI-focused tutorial in the developer inventory.
  • Note that tutorials can get out of date and lag behind the current Slicer development! If you encounter questionable issues, ask more experienced developers, or post a question to the slicer-devel list.
  • While creating a new module, use

Once you are done with the tutorials, explore the Developers manual, look at the examples of existing Slicer modules and existing Slicer extensions.

Please read these guidelines about style of git commit messages: https://www.slicer.org/wiki/Documentation/Nightly/Developers/Style_Guide#Commits