Web UI APIs

There are a few APIs that allow you to integrate with Stash's UI in stable and supported ways.

Decorators

Decorators allow you to style your own Servlet HTML output to look and behave like Stash pages. There is more detail available on the Plugin Decorators page, or you can follow a tutorial for decorating the user account or decorating the user profile.

Web Fragments

Web fragments allow you to define content that should be shown on existing Stash pages. There is more detail available on the Web Fragment and Client Web Fragment pages, or you can follow a tutorial to integrate your Client Web Panel into the Pull Request Overview.

Web Contexts

You can include your own UI assets (JavaScript, CSS, LESS, Soy, etc) onto any Stash page by choosing an appropriate context for it. A list of available contexts can be found on the Web Resource Contexts page.

UI Components - JavaScript, Soy, and LESS

Stash, like all Atlassian products, supports AUI components. These allow you to build UI components that look and behave like the rest of Stash. Note that the stability of AUI components marked "experimental" is not guaranteed between minor versions of Stash.

Stash also exposes some of its own components for you to use.

  • JavaScript API - utilities you can use in your own JavaScript code.
  • Soy API - currently a single template. We will expand this API in future releases.

Note that any unmentioned JS, Soy, or LESS components are not considered stable API and may change in any version. Do not use them if you require your plugin to work across upgrades of Stash.