Skip to main content

What is GitHub Star Tracker?

GitHub Star Tracker is a powerful GitHub Action that automatically monitors star counts across all your repositories on a schedule. It generates comprehensive visual reports with charts and badges, tracks historical trends, and sends notifications when changes are detected. Every time the action runs, it commits artifacts to a dedicated data branch, giving you a complete history of your repository’s growth and engagement.

Key Features

Animated SVG Charts

Star history, per-repo trends, top repository comparisons, and growth forecasts with automatic dark/light mode support

Historical Tracking

Configurable retention (default 52 snapshots) with JSON persistence to track your growth over time

Smart Filtering

Filter by visibility, ownership, minimum stars, regex patterns, archived status, and forks

Stargazer Tracking

See who starred your repos with avatars and timestamps to understand your community

Email Notifications

Built-in SMTP support with fixed or adaptive thresholds to stay informed of changes

Multiple Export Formats

Generate Markdown, HTML, CSV, and JSON reports for any use case

What You Get

Every run, Star Tracker commits these artifacts to your data branch:

Visual Assets

Animated SVG Charts that automatically adapt to dark/light mode:
  • Star history across all repositories
  • Per-repository trend lines
  • Top repositories comparison
  • Growth forecasts based on historical data
Shields.io-style Badge with your total star count that updates automatically and can be embedded anywhere.

Reports and Data

Markdown & HTML Reports featuring:
  • Summary tables with delta indicators
  • New and removed repository tracking
  • Stargazer details (when enabled)
  • Forecast tables showing projected growth
Machine-Readable Exports:
  • CSV format for spreadsheets and data analysis
  • JSON format for dashboards and downstream pipelines
All generated charts use the prefers-color-scheme CSS media query to automatically match the viewer’s theme preference. No configuration required!

How It Works

The action follows a straightforward execution pipeline:
1

Configuration & Fetching

Parses your configuration and queries the GitHub REST API to fetch all repositories matching your filters
2

Data Branch Initialization

Creates or accesses an orphan branch (default: star-tracker-data) to store historical data
3

Comparison & Analysis

Deserializes the previous snapshot, computes delta metrics, and optionally fetches individual stargazers
4

Forecast Generation

Computes growth forecasts based on historical trends for your top repositories
5

Report Generation

Creates Markdown, HTML, JSON, CSV reports, SVG badges, and animated charts
6

Commit & Notify

Commits all artifacts to the data branch and sends email notifications if configured

Action Outputs

The action provides rich outputs that can be used in downstream workflow steps:
OutputDescription
total-starsTotal star count across all tracked repositories
stars-changedWhether any star counts changed (true/false)
new-starsNumber of stars gained since last run
lost-starsNumber of stars lost since last run
should-notifyWhether notification threshold was reached
new-stargazersNumber of new stargazers detected
reportFull Markdown report
report-htmlHTML report (ideal for email)
report-csvCSV report for data pipelines
You can chain these outputs to other actions in your workflow. For example, use total-stars to update a README badge, or report to post to Slack.

Use Cases

  • Portfolio Tracking: Monitor star growth across all your open source projects
  • Team Analytics: Generate weekly reports for your organization’s repositories
  • Community Engagement: Track who’s starring your repos and when
  • Growth Metrics: Use CSV exports in data dashboards and BI tools
  • Automated Notifications: Get alerts when star counts change significantly
  • Historical Analysis: Understand trends and forecast future growth

System Requirements

  • GitHub Actions workflow with contents: write permission
  • Personal Access Token (PAT) with repo or public_repo scope
  • Node.js 24+ runtime (automatically provided by GitHub Actions)
The default GITHUB_TOKEN provided by GitHub Actions is not sufficient because it cannot access the authenticated user’s full repository list. You must create a Personal Access Token.

Next Steps

Quickstart

Get up and running in under 5 minutes

Installation Guide

Detailed setup instructions with PAT creation

Configuration

Explore all configuration options

Examples

Real-world workflow configurations

Build docs developers (and LLMs) love