Building plugins

By building plugins, you can add new features to the application. This includes new widgets and other UI features, as well as back-end components such as web services or custom authentication providers.

Plugins overview

With a plugin, you can add new features. The plugin framework supports several kinds of components.

  • With widgets, users can customize the application's overview pages to display the content they want. You can build widgets that give specialized windows into content and other data.
  • Macros provide easy ways to enhance content while editing it. In the content editor, the Insert menu displays macros.
    Note: This release doesn't support adding new macros. You'll be able to develop your own in a coming release.
  • Actions can add new links and pages to the user interface.
  • Many features are implemented as Spring beans. You can override these or provide your own. One example is to override security-related beans. For more information, see Authentication and authorization.


To develop plugins, you need the following:

  • An instance to test and debug against, deployed on a supported environment.
  • Optional. Building plugins is easier if you use Maven, a Java build tool. Like Ant, Maven provides a way to account for dependencies and to compile your source files.
  • Optional. A Java IDE. We recommend development environments, such as JetBrain's IntelliJ IDEA or Eclipse. You can use Maven to quickly create plugin projects for use with these tools. Note that plain text editors like vi or Emacs work just fine as well.