# GitHub Status Indicators

**URL:** https://meta.discourse.org/t/github-status-indicators/130471
**Category:** Theme component
**Tags:** official, github-status
**Created:** [October 8, 2019, 11:50am UTC](https://meta.discourse.org/t/github-status-indicators/130471 "2019-10-08T11:50:06Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [October 8, 2019, 11:50am UTC](https://meta.discourse.org/t/github-status-indicators/130471/1 "2019-10-08T11:50:07Z")

</div>

| | | |
| --- | --- | --- |
| :discourse2: | **Summary** | **GitHub Status Indicators** adds status indicators to GitHub oneboxes for issues and pull requests. Live information is provided by [https://shields.io](https://shields.io/). |
| 👓 | **Preview** | [Preview on Discourse Theme Creator](https://discourse.theme-creator.io/theme/Discourse/github-status) |
| 🛠 | **Repository Link** | [https://github.com/discourse/github-status-theme](https://github.com/discourse/github-status-theme) |
| 📖 | **New to Discourse Themes?** | [Beginner’s guide to using Discourse Themes](https://meta.discourse.org/t/beginners-guide-to-using-discourse-themes/91966) |

Install this theme component

> [@](#):
>
> :discourse2: As this is an #official theme component maintained by the Discourse team, #Support, #Contribute > Bug, #Contribute > UX, and #Contribute > Feature requests can be made in the respective categories here on Meta, and tagged with the appropriate theme component tag. Click on a link below to get one started. 👍
> 
> [❓&nbsp; **Support**](https://meta.discourse.org/new-topic?category_id=6&tags=github-status "Ask for support on configuring and using GitHub Status Indicators") [🐛&nbsp; **Bug**](https://meta.discourse.org/new-topic?category_id=1&tags=github-status "A bug report means something is broken, preventing normal/typical use of the theme component") [👀&nbsp; **UX**](https://meta.discourse.org/new-topic?category_id=9&tags=github-status "Discussion about the user interface of GitHub Status Indicators, and how features are presented (including language and UI elements)") [💡&nbsp; **Feature**](https://meta.discourse.org/new-topic?category_id=2&tags=github-status "Discussion about how existing GitHub Status Indicators features can be improved or enhanced, and how proposed new features could work")

### Features

**GitHub Status Indicators** adds status indicators to GitHub oneboxes for issues and pull requests. Live information is provided by [https://shields.io](https://shields.io/).

For example:

 ![49](https://global.discourse-cdn.com/meta/original/3X/7/a/7a197d1c63bd3f1c7fa584d0030db096dedfe909.png)

  

> :discourse2: **Hosted by us?** Theme components are available to use on our Standard, Business, and Enterprise plans.

> Last edited by @JammyDodger 2024-06-12T18:39:37Z
> 
> > **Check document**
> >
> > Perform check on document:

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [October 14, 2019, 1:52am UTC](https://meta.discourse.org/t/github-status-indicators/130471/2 "2019-10-14T01:52:38Z")

</div>

I agree with the call of not including this in core onebox, it does technically leak user IP addresses to `shield.io`.

I do love how it looks though. I wonder if `discourse-github` should take care of this long term, problem though is that there is enormous amount of work in making this work just right, so for now … the component is good.

---

<div class="post-metadata">

### Author: ![nathank](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nathank/32/290039_2.png) [@nathank](https://meta.discourse.org/u/nathank)
#### Post date: [May 10, 2023, 6:30pm UTC](https://meta.discourse.org/t/github-status-indicators/130471/3 "2023-05-10T18:30:12Z")

</div>

Does the #github plugin do this now, or is this Theme Component still needed?

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [May 10, 2023, 8:49pm UTC](https://meta.discourse.org/t/github-status-indicators/130471/4 "2023-05-10T20:49:34Z")

</div>

This is still a separate theme component. It depends on the third-party [shields.io](http://shields.io) service, so I don’t think we’d want to move it into the discourse-GitHub plugin as-is.

Implementing a similar feature ourselves from scratch is possible, but quite involved (especially when you consider GitHub’s API rate limits)

---

<div class="post-metadata">

### Author: ![sunjam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sunjam/32/175682_2.png) [@sunjam](https://meta.discourse.org/u/sunjam)
#### Post date: [September 20, 2023, 3:16pm UTC](https://meta.discourse.org/t/github-status-indicators/130471/5 "2023-09-20T15:16:32Z")

</div>

Can it be used with Shields being self-hosted? They allow anyone to self-host their service with a Creative Commons 0 Public Domain license.

Here is the docker image [shieldsio/shields - Docker Image](https://registry.hub.docker.com/r/shieldsio/shields/)

---

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [September 21, 2023, 7:46pm UTC](https://meta.discourse.org/t/github-status-indicators/130471/6 "2023-09-21T19:46:05Z")

</div>

> [@sunjam](#):
>
> Can it be used with Shields being self-hosted?

I think the discussion above was about not wanting to add this theme component’s functionality to the core Discourse code. The reason for that is because it technically leaks a user’s IP address to `shield.io`. That is why this is a theme component and not a part of the core code.

It can be used on any site, hosted, or self-hosted:

 ![image](https://global.discourse-cdn.com/meta/original/4X/0/d/f/0df4c3566b8c08b8f559281f69b70462d907f687.png)

---

<div class="post-metadata">

### Author: ![sunjam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sunjam/32/175682_2.png) [@sunjam](https://meta.discourse.org/u/sunjam)
#### Post date: [September 21, 2023, 9:19pm UTC](https://meta.discourse.org/t/github-status-indicators/130471/7 "2023-09-21T21:19:03Z")

</div>

> [@simon](#):
>
> The reason for that is because it technically leaks a user’s IP address to `shield.io`

I’m confused because Shields can be self-hosted. In that case, wouldn’t the IP not be leaked to [shield.io](http://shield.io) since it is instead being directed to a self-hosted installation?

---

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [September 21, 2023, 9:24pm UTC](https://meta.discourse.org/t/github-status-indicators/130471/8 "2023-09-21T21:24:48Z")

</div>

> [@sunjam](#):
>
> Shields can be self-hosted. In that case, wouldn’t the IP not be leaked to [shield.io](http://shield.io) since it is instead being directed to a self-hosted installation?

That makes sense. I guess the issue is not wanting to add a `shields url` to the Discourse site settings. If you wanted to use this theme component with a self-hosted Shields installation, I think you would just need to edit this line to point to your installation instead of to `img.shields.io`:

> <https://github.com/discourse/github-status-theme/blob/ebfe3fa1a5bcfa00f49d2a141bb0623f7fadc666/javascripts/discourse/initializers/initialize-github-status.js#L39>

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [September 21, 2023, 11:16pm UTC](https://meta.discourse.org/t/github-status-indicators/130471/9 "2023-09-21T23:16:22Z")

</div>

I think as long as the default remains [img.shields.io](http://img.shields.io), adding a theme setting for the server URL would be #pr-welcome 👍
