I started making a JIRA plugin (in JAVA) and was bothered by the all the fluff that was needed and terrible documentation from Atlassian. All I really needed was to call the JIRA API and handle the JSON data returned. So, I whipped up a Chrome App in a couple hours.
Bootstrap and jQuery
Typically I avoid these if at all possible. Not because they aren’t great or anything, but because I consider them ‘shortcuts’ and find more value in doing everything by hand. In a previous project, getting rid of jQuery cut my package size in half. For this project, I decided to use both in the interest in pumping out a Proof of Concept as fast as possible.
The Source Code
Calling the JIRA API
The user is shown a login page. The user enters the JIRA URL, like
https://example-jira.atlassian.net/, and their username and password (note this will not work if you only use oAuth to login). When the user submits the form I make an AJAX call to the endpoint
rest/auth/latest/session using Basic Auth. If the login is successful a dummy dashboard is shown, else an error message is display on the login form.