Skip to content

Guide to developing CKAN GUI plugins

Alexander Dzhoganov edited this page Jan 6, 2015 · 23 revisions

As of version .., the CKAN-GUI supports external plugins which can modify and extend the interface and the behavior of the client. This guide is intended for .NET developers who wish to create their own plugins for ckan.exe.

This guide uses code from the WebBrowser plugin sample, if you are ever in doubt look there first.

Setting up your development environment

Windows users should use the latest available Visual Studio version (free edition is fine), Linux/ OSX users should use MonoDevelop. Compiling CKAN plugins requires the same setup as CKAN itself, so please follow this cross- platform CKAN build guide to finish setting everyting up.

Creating a new project

After setting up your IDE, you should create a new C# .NET 4.0 project, please turn to either VS or MonoDevelop's documentation if you're unsure how to do this. You should name your project properly, plugin names should follow the CKAN identifier specification (i.e. ASCII, no spaces, no special characters except -). For this guide we've chosen WebBrowserPlugin, this is the name of the project, the produced DLL and the name that will appear in CKAN.

At this point you should have an empty (or almost empty) project. You should add two references now - one to ckan.exe and another to System.Windows.Forms. This is it, we're ready to write some code.

The IGUIPlugin class

Clone this wiki locally