Skip to content

About

Visualize data related to your GitHub team

Topics

Resources

Contributing

Stars

5 stars

Watchers

1 watching

Forks

Repository files navigation

GitHub Team Dashboard

Whether it is in your laptop or in a big screen, GitHub Team Dashboard will allow you to comfortably visualise useful information related to your GitHub team.

Example screenshot: Dashboard Example

Running the application

In order to use this application you need to generate a GitHub personal access token in GitHub's settings menu, under Developer settings, Fine-grained tokens. The token requires these permissions:

  • Organization permissions:
    • Read access to Members
  • Repository permissions:
    • Read access to Commit statuses
    • Read access to Contents
    • Read access to Dependabot alerts
    • Read access to Pull requests

Make sure you store this token somewhere, as you can only see it once.

By default, the application will run in port 8080. If you want it to run on a different port, set the environment variable MICRONAUT_SERVER_PORT to a different port.

Docker

You can find all available docker images here: GitHub Container Registry

Copy a docker image tag and start a container as follows:

docker run -d -p 8080:8080 \
    -e GITHUB_DASHBOARD_TOKEN=<your_token> \
    -e GITHUB_DASHBOARD_TEAM=<your_team> \
    -e GITHUB_DASHBOARD_ORGANIZATION=<your_org> \
    --name github-team-dashboard \
    <docker_image_tag>

E.g.:

docker run -d -p 8080:8080 \
    -e GITHUB_DASHBOARD_TOKEN=<your_token> \
    -e GITHUB_DASHBOARD_TEAM=<your_team> \
    -e GITHUB_DASHBOARD_ORGANIZATION=<your_org> \
    --name github-team-dashboard \
    ghcr.io/xalvarez/github-team-dashboard:5.0.0

The application will then be available under http://localhost:8080.

Gradle

Important

The application requires JDK 25 to run.

Before starting your application you need to set the following environment variables:

GITHUB_DASHBOARD_ORGANIZATION=<your github organization>
GITHUB_DASHBOARD_TEAM=<your github team within that organization>
GITHUB_DASHBOARD_TOKEN=<your personal access token>

After setting the environment variables above you can start the application as follows:

./gradlew run

Thanks to incremental annotation processing, startup time will improve significantly the next time you run the command above.

The dashboard data is fetched from GitHub in the background and cached, so the page loads instantly from the latest snapshot. By default, the cache is refreshed every 10 minutes. To use a different interval, set the optional GITHUB_DASHBOARD_REFRESH_INTERVAL environment variable to a duration (e.g. 5m, 30s, 1h).

Once the application starts you'll find it under http://localhost:8080. If you want it to run on a different port, set the environment variable MICRONAUT_SERVER_PORT to a different port before starting the application, e.g.:

export MICRONAUT_SERVER_PORT=10000

Watching for changes

If you want the application to restart automatically after modifying code you should start it as like this:

./gradlew run --continuous

Health endpoint

The application exposes a /health endpoint which you can use to see if it's running.

Running tests

The following command runs all checks:

./gradlew check

Contributing to GitHub Team Dashboard

Should you want to contribute to GitHub Team Dashboard please have a look at CONTRIBUTING.md.

About

Visualize data related to your GitHub team

Topics

Resources

Contributing

Stars

5 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages