Badges are a unified way to present meta information and widely adopted in the software community. This GitHub App brings badges to your Pull Requests in an automated way. The root idea was to automatically add a JIRA badge whenever a Pull Request is opened, but it's not limited to that.
Whenever a Pull Request is opened and the branch name or the Pull Request title matches the naming convention, this GitHub app will automatically add a badge at the beginning of the Pull Request description. This includes a link referencing the JIRA ticket.
Pull Request Badge is not limited to JIRA! Through the simple API you can easily present any kind of information. How about adding a preview badge with a link to a preview instance? Or indicate if the Pull Request is small? Check out the $payload attribute for more details. Your creativity is the limit.
»With a large distributed engineering team, it can be hard to enforce rules about including links to tickets within
Pull Requests;having it automated was the perfect solution and it’s super slick.«
.github/pr-badge.ymlfile in your repository with the following content.
label: "JIRA"url: "https://jira.company.com/browse/$issuePrefix"message: "$issuePrefix"color: "0052CC"when: "$issuePrefix"
Text on the left side of the badge.
Text on the right side of the badge.
If added, the badge will be wrapped with this URL.
The color for the badge in hex format without #. The default value is
label: "Preview"url: "https://$prNumber.preview.company.com/"message: "Available"color: "green"
label: "Size"message: "Large PR"color: "red"when: "$additions > 500 || $deletions > 500"
message: "Work in Progress"color: "yellow"when: "$labels.includes('WIP')"
- label: "Hello"message: "World"- label: "Foo"message: "Bar"color: "green"
label: "User"message: "$payload.pull_request.header.user.login"
»As engineers we use GitHub heavily every day. We just as often need to interface with other systems or resources such as Atlassian Jira or deployment previews. Pull Request Badge helps us bridging the gaps and linking to anything external becomes a breeze.«
The number of this Pull Request.
The name of the branch where your changes are implemented.
The branch name or Pull Request title issue prefix extracted when following the Naming Convention.
Indicates whether this Pull Request is a draft.
The number of additions made in this Pull Request
The number of deletions made in this Pull Request
Total number of commits
Total number of changed files
Raw webhook payload object from GitHub. Check out the webhook payload example for further information.
Pull Request Badge uses the following naming convention to extract the
$issuePrefix. Please make sure your branch name or Pull Request title contains an uppercase issuePrefix.
»With the Pull Request Badge App developers have everything they need to move forward and this helps us to make our communication much more effective.«
No, not yet. The source code is exclusively available to people who sponsor me on GitHut, but after reaching a certain number of sponsors, the software fully open-source and available to anyone. Head over to github.com/stefanbuck/pull-request-badge-app to learn more about it.
We only request necessary GitHub permission and we canot read or write any source code! The Pull Request App requires the following GitHub Permissions:
Become a sponsorware "customer" and you will get access to the source code which then allows you to run the app yourself.
Hello there! I'm Stefan 👋. I care a lot about efficiency and that's the reason I built a browser extension that allows you to navigate through code on GitHub much more efficiently. OctoLinker is trusted by over 25,000 developers and my most favored side project in the past five years.
This is just the beginning! I have plenty other ideas on how to make your developer experience much better. Sign up to be the first to hear about other tools I'm working on.