Posts about Add-ons

You have a cool idea about an Atlassian Connect add-on and you are still in love with Java. This guide will give you a real example and show you what it takes to turn your web app into a Connect add-on.

We're happy to announce a new Connect module for JIRA: the Time Tracking Provider module. With the Time Tracking Provider module, JIRA administrators can add alternate time tracking tools and select which one should be displayed. This hides JIRA's native fields and buttons for time tracking so that add-ons can provide their own time tracking models. That way, users aren't confused about where to track time.

Have you ever wanted to try out a full serverless architecture? Or write a HipChat plugin? The new open source boilerplate from GorillaStack, announced at this year's AtlasCamp, enables developers to easily deploy the back-ends for their plugins to Amazon Web Services' serverless products in Lambda, API Gateway, DynamoDB, and S3.

In this follow-up post Andreas Knecht, ex-Atlassian and founder at Code Barrel, shares some more great tips for developing JIRA Server add-ons with a modern development stack.

In this guest post Andreas Knecht, ex-Atlassian and founder at Code Barrel, shares some great tips for developing JIRA Server add-ons with a modern development stack.

Spring Boot is a powerful framework to build microservices. See how you can use it to build Atlassian Connect add-ons within minutes.

A major part of building add-ons for JIRA is the ability to show web fragments as an integrated part of pages within JIRA. This allows your add-on, via Atlassian Connect, to seamlessly integrate with JIRA. Getting JIRA to know when the right time to show these web fragments turned out to be a more complex and impactful problem than we expected.

The Confluence platform team has been building more ways for your Connect add-ons to integrate with and extend search in Confluence. Initially announced at AtlasCamp 2015, we've shipped some awesome new features that allow you to get the most out of content properties.

I'm a huge fan of Node.js and npm, so I've built a little npm for Bitbucket add-on that adds module metadata, dependency information and download statistics to the npm modules hosted on Bitbucket. What makes the add-on special is that it's built in a slightly peculiar way: it's 100% static HTML & client-side JavaScript. However, it uses a variety of interesting XHR techniques (CORS, window.postMessage, and API proxying) to exhibit some pretty powerful dynamic behaviour.

Here at Atlassian, we are big fans of Uber. So, a fewweeks ago, we took a crack at building an Uber integration inside HipChat.The best only took us a few days to build!

At Atlassian, we have add-ons we develop and use to enable more powerful workflows within our products. Using Atlassian Connect, we can write those add-ons in any language. We often write those add-ons using Node.js. But once in a while we run into a performance problem with an add-on. I had to learn how to profile a Node.js app, so we could live happier lives with less waiting.

Bitbucket recently released a new add-on module type: the FileView. FileViews allow you to define how files of a particular type are displayed on the Bitbucket source view page. In this post, I'll show you how I built Run, Bucket, Run: a fun, if somewhat inefficient, way to view your source.

A few weeks ago, we introduced Atlassian Connect for Bitbucket, an add-on framework that lets you modify the Bitbucket UI. This post is a quick walkthrough on how to build a simple add-on that retrieves data from a repository, does some simple aggregation and displays it to the user.

Last month, Atlassian was a proud supporter of the Node Summit in San Francisco. We were there to talk to developers about using NodeJS to build add-on microservices for Atlassian Cloud products. Earlier this week, Node Summit released the videos from the 2015 Conference.
Building an add-on with Node? Here are a few useful sessions!

You've been working on a Connect add-on using Atlassian Connect Express (ACE). You're to the point where you need to store some data in your add-on. You can use the add-on properties REST API in some cases. You can add an entire storage mechanism to handle this but ACE has a settings storage mechanism already. Get this — you can just piggyback on that! It's not hard to do, and it's perfect for things like global configuration for your add-on.

For some time we've provided an API compatiblity-checking service to plugin developers – We built this service some years ago ostensibly so you could more easily check if any product Java API you are using is or isn't a public supported API. We're retiring this service shortly.

Last week, Twitter was abuzz about an initial release of io.js. io.js is an npm compatible platform originally based on Node.js and is a fork of Joyent's Node.js.

Have you ever considered that the same awesome Atlassian products or applications that allow you to track, build and collaborate can help you as you're developing an add-on?