I've used Jira in the past and have noticed its sometimes tricky users (especially new users) to find the correct screen to complete a certain action. This was an attempt to create one location to action most common Jira tasks. I decided to create a UI that closely resembles a terminal for a number of reasons

  1. It's a familiar interface to many developers and computer users
  2. The interface is clean and intuitive
  3. Actions can be easily shared between users by copying and pasting the executed command

What it does

The application acts as an interface for many common Jira actions. By typing commands into the virtual terminal actions such as assigning or creating issues, logging work, or viewing project details can be quickly run. The application allows power users to utilize the power of Jira in a from a single location in an efficient manner

How I built it

The Jira4Devs UI framework was built from scratch using React JS. The static website is hosted on AWS S3 behind CloudFront allowing the application to be serverless. All interaction with Jira is done with the Atlassian connect API which is injected in to the application by Jira.

Challenges I ran into

The trickiest part of this project was creating the terminal interface. There are a few open source react terminal components, but none were able to provide the extensibility requires of this project. Creating the terminal from scratch was the trickiest and most rewarding part of the project

Accomplishments that I'm proud of

I am most proud of of the user interface of this project. It was challenging creating a terminal-like interface in React but the end result looks clean and closely approximates an actual terminal emulator.

What I learned

The two main things I learnt from this project were

  • How to use the Atlassian Connect API, and its strengths/pitfalls
  • Advanced styling with React

What's next for Jira4Devs

There are a couple future features I would like to add to Jira4Devs

  • More commands: The Jira API is quite comprehensive, so supporting more actions shouldn't be too challenging
  • Cleaner results view: The current results table is concise functional, but there may be better means of representing some data. Sorting the reported data would also fall under this category
  • Code Refactor: As is customary for a hackathon the code is a bit thrown together. Refactoring it into a maintainable project would enable more advanced features to be introduced with little risk to existing functionality
Share this project: