Keep Tabs on the State of your Code with Badges

Status badges allow your teams to keep an eye on the health of their projects at a glance. They can be integrated into any tool that has network access to your CodeScene server. (Access to badges is public. See Embedding on GitHub below.)

The only required information is the project id, which must be inserted in the URLs below. For badges that show data on architectural components the component name is supplied via a GET query parameter (see the Configuration section below).

Types of Badges

CodeScene currently supports badges for the following metrics:

Code Health

The Code Health status badge is available at /{ project id }/status-badges/code-health.

The Code Health status badge

Fig. 59 The overall code health of the project.

Missed Goals

The Missed Goals status badge is available at /{ project id }/status-badges/missed-goals.

The Missed Goals status badge

Fig. 60 The status of your project goals.

System Mastery

The System Mastery status badge is available at /{ project id }/status-badges/system-mastery.

The System Mastery status badge

Fig. 61 Keep track of knowledge loss when developers leave the project.

Configuration

Status badges can be activated on a per-project and per-metric basis in the “Status Badges” configuration tab. In addition to project-level badges the Code Health and System Mastery badges can also be shown for every individual architectural component in the project. These badges are activated using the same checkbox that activates the project-level badge and their URLs can be obtained by selecting component name from the drop-down menu on the configuration screen.

Embedding

CodeScene’s status badges can be embedded anywhere, as long as a network connection to the CodeScene server is available. In typical use cases, this would include pages on your organisation’s intranet, such as hosted Jira, Gitlab or GitHub Enterprise servers.

HTML and Markdown snippets are available on the “Status Badge” configuration page when you select a badge type. The project id is pre-filled but you will need to supply the URL for your CodeScene server.

Embedding on GitHub

Images on GitHub README pages are served by a proxy <https://help.github.com/en/github/authenticating-to-github/about-anonymized-image-urls>. The GitHub proxy will not be able to access status badges on CodeScene. Besides operating your own proxy server to allow public access to the status badges, there is currently no solution for publishing status badges on GitHub. Instead, however, you can publish a static badge that can serve as a link back to CodeScene. This will still make it easier for developers on your team to find the latest CodeScene analysis.

Sample markup is provided on the “Status Badges” configuration tab. The badge image is hosted at https://www.codescene.com/status/analyzed-by-codescene-badge.svg. You can copy the image to your own public servers if you prefer.

Security

When they are activated, CodeScene’s status badges are public. Users who are not logged in to CodeScene will still be able to see be able to see the badges as long as they have network access to the CodeScene server. This is why badges are opt-in.

Activating a badge does not expose any other data besides the SVG image itself.