Confluence's plugin system allows you to build apps that customize and extend Confluence. An app (also known as a plugin or add-on) is a bundle of code, resources and a special configuration file that can be installed on a Confluence site to add new functionality, or change the behavior of existing features.
There are two main types of apps:
The terms app, add-on, and plugin are often used interchangeably. Throughout this guide, we'll mostly use the term 'plugin'.
In this guide:
Building for a cloud site?
Head over to our Confluence Cloud docs to build for Confluence instances hosted by Atlassian in the cloud.
Every plugin is made up of one or more plugin modules. A single plugin may do many things, while a plugin module represents a single function of the plugin.
For example, a theme plugin will consist of a colour-scheme module to define the theme's colors, a number of layout modules to define the site's page layouts, and a theme module to combine those pieces together into a single theme.
Some plugins, such as the macro packs that come with Confluence, are just a collection of unrelated modules that just happen to be packaged together. Other plugins, such as theme plugins, have modules that work together to provide some orchestrated functionality.
Category | Storage |
---|---|
Manually installed | database |
Installed via repository | database |
Bundled plugins |
|
System plugins |
|
For example, the System plugins chart
plugin or the Widget Connector
plugin will store data in WEB-INF/lib
. Similarly for advanced-formatting macros.
There is no distinct requirement where a Confluence plugin's run-time data is stored. It depends on the particular implementation of each plugin. The most common storage location would be: database, BANDANA, conf-home
or other.
If you're interested in developing an app for Confluence, our plugin SDK is a great place to start.
Rate this page: