This documentation applies to JIRA 4.0. If you are developing a plugin for JIRA 3.x, please see the previous documentation.
Getting started developing with JIRA
So you're thinking of customizing JIRA? Maybe you want to change the way JIRA looks? Or create a new custom field type? Or add some new Workflow transitions? Well, you've come to the right place. Here are all the resources to get started developing for JIRA.
This tutorial will show you how to set up your development environment, create an empty plugin template, and the basic principles of building, debugging, and testing a plugin. It will take you through the prerequisites and introduce you to some of the resources that Atlassian provides for plugin developers.
These documents are specifically about plugins for JIRA. There's a page for each plugin module type that JIRA supports. You can combine multiple plugin modules inside a single plugin to accomplish complex tasks.
These documents go some of the way to explaining what's really going on inside JIRA. Some of this information is useful to plugin developers. Other pieces are more relevant to the JIRA development team, but we've published them here in the spirit of open documentation.