The idea behind

The main reason for why this app was created was to show whole issue history visually on timeline, so you can get better grasp on how issue was changing in past. On timeline you will easily see how much time issue spent on each status, when it was transitioned, field changed or when it was commented on and by who. It really helps to easily get issue history information just by looking at graphical timeline, compared to raw data in issue history without any visual reference. Issue Timeline also allows you to view history of parent task or subtasks, so you can easily compare them, and see how they was changing in time in relation to the main task.

How we built it

Issue Timeline is based on Forge and mostly made with Custom UI with addition of Atlaskit and Vis.js visualization library. We also used React and Typescript for types support, as it greatly helps maintain codebase. Internally we do not store any information in our app, and only relies on data provided for given issue by Jira API. The main application view is located in custom activity named “Timeline”, so it nicely blends with other standard issue activities like comments and history. This activity will be displayed on every issue and subtask.

Challenges we ran into

The main challenge was to determine how exactly that timeline and events/transitions should be presented on it. We check some alternative libraries for visualization, and even try with our own timeline implementation, but at the end vis.js was the best option that had all the features needed by us. With it we were able to not only show all history for given issue, but also display and group other related issues like parent task and subtasks. It will also help us in implementing new features in future.

What's next for Issue Timeline

We want to expand standard functionality of Issue Timeline and add some more features. Currently we are aiming at:

  • better events grouping, especially when there are many events in small time period,
  • some more statistics about time issue spent on each status,
  • ability to filter events that should be displayed. After that we are looking forward to publish our app on Atlassian Marketplace.
+ 1 more
Share this project:

Updates