- Test your plugin. Though we won't make judgments about how "good" your plugin is, we would like to maintain a minimum level of quality, so please, please, thoroughly test your plugin against a real installation of ClearCanvas Workstation.
- Contributions must be open source. Because we want to encourage the development of plugins that can be improved upon by the community, all contributions must be open source.
- An open source license must be specified. Please include an OSI approved license in your distribution. We use the New BSD license, but don't feel you have to as well.
- Your plugin should be built against an official version of the SDK. Ensure that your plugin is built against an official release of the SDK. This is a must, as it's the only way to ensure that it's compatible with the corresponding release of ClearCanvas Workstation. (For example, building your plugin against SDK 1.2 will ensure that it works with the official version of Workstation 1.2.) If you build it against the source, your plugin will not work with the official releases because of .NET versioning problems. We also encourage you to build against the latest version of the SDK.
- Your plugin should be a Release build, not a Debug build.
- Your distribution should have the following directory structure:
- Your plugin .dll(s)
- Any related dependencies.
- The contents of this directory is what will be copied into the user's \plugins folder.
- An OSI approved license in .txt or .rtf format
- Any accompanying documentation in any reasonable text format (e.g., .chm, .doc, .html, .pdf, .rtf, .txt, etc.) Please avoid Word 2007 files (.docx) as many users do not have Word 2007.
- Source files. This should include the .csproj and .sln files. Do not include .suo files. Also, make sure you haven't included any hidden SVN directories.
- Zip your distribution. Your distribution should be a single .zip file that is zipped at the [YourPluginName] directory (see above).
- Look at the sample. To see a sample distribution, download this Sample Plugin.
Once you've packaged up your plugin, upload it to the ClearCanvas Community Plugins repository. You can also optionally include a screenshot in the image field of the upload form. The description field should be formatted like this:
Description: A brief description of the plugin.
Requires: The version of ClearCanvas Workstation it works with (e.g. ClearCanvas Workstation 1.2)
License: The license it is released under (e.g. New BSD)
Keep in mind that the repository is moderated, meaning that before it's posted, we'll review your submission. We will check for conformance to the guidelines above and we'll try to install it. If there are any obvious problems, like crashes, we will ask that you resubmit. Note, however, that we will not be subjecting it to any formal testing. We will also not make judgments as to the quality or usefulness of the plugin--we leave it to the community to decide that through ratings and comments, which hopefully should encourage you to write a useful plugin of good quality!