Atlassian Connect apps can be written using many different languages, frameworks and tools. Since Atlassian Connect apps operate remotely over HTTP and can be written with any programming language and web framework there are many tools available for you to develop your apps.
We've written two different frameworks to help you get started. These frameworks help to generate some of the plumbing required for your Connect app, and are officially supported by Atlassian:
Atlassian and our excellent developer community have also written a number of other frameworks that you can use. These frameworks are not supported by Atlassian but they may be supported by members of the community:
Confluence web fragment finder
The web fragment finder is an app which loads a Web Fragment: Web Item, Web Section, Web Panel, in all available Confluence locations. Web Fragments contain a unique location, making it easier to identify the right extension points for your app.
The Connect inspector is an extremely useful tool allowing developers to watch live lifecycle and webhook events in your web browser. The inspector allows you to generate a temporary Atlassian Connect app you install into your cloud development environment. It will live for three days and store any lifecycle and webhook events that it receives.
Content property tool
In Confluence, you can store data against the host product without a backend. Learn about storing data without a database. This kind of hosted data storage is implemented via content properties and the Content Property tool makes it trivial to create, read, update, and delete content properties in Confluence.
JSON descriptor validator
This validator will check that your descriptor is syntactically correct. Paste the JSON content of your descriptor in the descriptor field, and select the Atlassian product you want to validate.
An encoded JWT token can be opaque. Use this handy tool to decode JWT tokens and inspect their content. Just paste the full URL of the resource you are trying to access in the URL field, including the JWT token. For example: