Awesome Graphs for Bitbucket: visualized statistics for Git and Mercurial repositories

By on August 5, 2015

This guest post is written by Alexander Kuznetsov, co-founder of StiltSoft. Alexander has seven years of experience as a software developer, including five years in developing add-ons for Atlassian platforms. He’s also the runner-up of 2012 Codegeist, Atlassian’s add-on development competition, for the add-on he built called, “Awesome Graphs for Stash.”

We at StiltSoft, Atlassian verified vendor and expert, create add-ons for various Atlassian applications. Our team is always eager to provide developers with the handy tools they need so they can focus more on the important stuff, deliver on their work commitments with fewer efforts and enjoy the process at the same time.

One of our products is Awesome Graphs for Stash. It provides graphs and charts to visualize the contribution statistics in Git repositories, evaluate a team’s performance and get useful data for planning and analysis.

We have watched Bitbucket evolve at a rapid pace and couldn’t wait for the opportunity to make Awesome Graphs available in the cloud. We were very excited when he heard about Atlassian Connect for Bitbucket. The Atlassian Connect framework made it possible to build the add-on and make Awesome Graphs available for 3 million developers on Bitbucket.

Awesome Graphs for Bitbucket

Our goal currently is to make the graphs and charts of Awesome Graphs for Stash available in Bitbucket so that Bitbucket developers can visualize the statistics of their repositories, keep track of what the contributors have done, get analytical data for running retrospectives and plan their future work while making informed decisions.

It is always very inspiring to watch your projects evolve by checking graphs from time to time. You can track your progress, see the work that has been done and feel accomplished.

We released the first version of Awesome Graphs for Bitbucket in June with Commits and Punchcard. That’s only the beginning and more graphs are coming in the next couple of months.

Why should you use Awesome Graphs?

The Commits tab shows the number of commits made over the last year grouped by week on a given repository. The interactive scatter chart below the bar chart displays detailed daily commits for the week selected on the bar chart. This allows you to get a summarized history of each repository and understand when most of the work was done.

image00

The Punchcard tab helps you figure out which hours of the week have been the most productive for your team by showing commit frequency on each day of the week and time starting from the first commit in the repository. This helps you plan your day’s activities so that you are not distracted and completely focused during the most productive hours. Most importantly, you can use the insights to improve the performance and efficiency of your team.

image01

Wanna see it in action?

You can try Awesome Graphs for Bitbucket by installing the add-on from the Find new add-ons section of Bitbucket. You can start using it as soon as the installation is completed. Navigate to the Graphs section on the left-hand sidebar to view commits and punchcard graphs of the current repository.

You can also share your feature requests  by voting and commenting in Awesome Graphs for Bitbucket forum. If you run into any issues while using Awesome Graphs for Bitbucket, please, contact us.

13 Comments

  • Posted August 5, 2015 at 10:09 am | Permalink

    It’s great to see that this sort of add-on is possible. However, it’s sad to me that we have to pay for an add-on for a feature (activity graphing/charting) that Github has baked in. This is particularly valuable to have for open source projects.

    • Raj Sarkar
      Posted August 5, 2015 at 12:07 pm | Permalink

      Hi Greg,

      You don’t have to pay to use this add-on. Go to “Manage Settings”, Click on “Find new add-ons” from the left menu and install “Awesome Graphs”.

  • Posted August 6, 2015 at 12:25 am | Permalink

    This looks very cool, and I would like to try it out.

    I wanted to experiment with plugin for a repository, but the moment I click “install” it tells me this plugin requires read access to repositories.

    While I don’t have a problem with providing read access to the repository I’d like to test with, I *do* have a problem with blindly handing over the keys to all my (private) repositories to a third party. Is there a way to allow access on a per-repository basis?

    Besides, doesn’t it make more sense to allow only repo admins to configure what applications have access to what repositories? If it already works this way, I apologise, I simply didn’t continue installation of the plugin due to my hesitation of giving full read access to all repos.

    • Katerina Kolina
      Posted August 6, 2015 at 2:08 am | Permalink

      Hi Peter,

      Awesome Graphs uses the repository scope. You can read about this scope here:

      https://developer.atlassian.com/static/bitbucket/concepts/bitbucket-rest-scopes.html.

      The access to read repositories is needed to collect commit metadata required to promptly build and render graphs when loading pages. We collect and encrypt the following commit details: repository UUID, commit hash, author username, parent hashes, commit date. The add-on doesn’t get your source code. No cloning operations are executed, the data is collected using REST API.
      At the moment there’s no capability to allow access on a per-repository
      basis.

      Here’s the link to our Privacy Policy:
      https://docs.stiltsoft.com/display/public/AwesomeGraphsBitbucket/Privacy+Policy

      • Posted August 6, 2015 at 2:28 am | Permalink

        Hi Katerina,

        Thank you for the detailed response. Do you (or Bitbucket employees reading this) know if there are any plans to change the way access control is applied?

        We use BitBucket in a professional setting, and if we’ve signed an NDA for one project, the current access control mechanism would prohibit us from installing plugins, even if the other repositories are not for that client/project.

        Note that a similar problem occurs when you work for multiple organisations with different disclosure policies (or simply if you work for a company and use an account which also has some repositories for personal use).

        • Katerina Kolina
          Posted August 7, 2015 at 2:32 am | Permalink

          Peter,

          I am not aware of such plans for Bitbucket.

  • Matt
    Posted October 8, 2015 at 12:35 pm | Permalink

    I get this error when I try to install:

    “The add-on server returned invalid data. Please contact the add-on vendor for help. Here’s the error we encountered – The content-type header was text/plain; charset=utf-8, but we expected application/json.”

    • Katerina Kolina
      Posted October 9, 2015 at 3:24 am | Permalink

      Hi Matt,

      The issue was fixed. Please try installing the add-on again.
      Sorry for the inconvenience.

      • Matt
        Posted October 9, 2015 at 4:34 pm | Permalink

        Thanks!

  • John
    Posted December 10, 2015 at 3:20 am | Permalink

    Great add-on. One of our team had an incorrect email against his profile – his avatar was a grey question mark. To correct this we created an alias and that has resolved the issue – but his profile is missing from Awesome Graphs. Can you think of any reason why Awesome Graphs is not displaying this profile? I’ve tried reinstalling.

  • vishnu vardhan reddy
    Posted February 8, 2016 at 12:28 am | Permalink

    HI,

    I would like to get the plugin usage statistics for various servers in bitbucket.Is there a way to do that

    Thanks
    Vishnu

    • Katerina Kolina
      Posted February 12, 2016 at 6:06 am | Permalink

      Hi,

      Sorry, I am not sure I understood your request. Could you explain it in more detail? Do you mean you would like to get the statistics of usage of Awesome Graphs?

      Cheers,
      Katerina Kolina (StiltSoft)