explaingit

ncdc/github-release-stats

Analysis updated 2026-07-09 · repo last pushed 2023-10-05

GoAudience · developerComplexity · 2/5DormantSetup · moderate

TLDR

A command-line tool written in Go that fetches GitHub release history and calculates how frequently a project ships major versions, showing stats like average days between releases and release consistency.

Mindmap

mindmap
  root((repo))
    What it does
      Pulls GitHub release data
      Tracks major x.y.0 releases
      Calculates release intervals
      Shows cadence consistency
    Tech stack
      Go
      GitHub API
      CLI
    Use cases
      Compare library release health
      Benchmark team release frequency
      Evaluate project reliability
    Audience
      Engineering managers
      Open-source maintainers
    Setup
      Needs GitHub token
      Build Go binary
      Set environment variable
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Compare two libraries to see which one ships major releases more consistently.

USE CASE 2

Benchmark your own team's release frequency against well-known projects like Kubernetes.

USE CASE 3

Evaluate the health and rhythm of an open-source project before adopting it.

What is it built with?

GoGitHub APICLI

How does it compare?

ncdc/github-release-statsaasheeshlikepanner/vasealexzielenski/controller-runtime
Stars0
LanguageGoGoGo
Last pushed2023-10-052022-04-20
MaintenanceDormantDormant
Setup difficultymoderatemoderatehard
Complexity2/54/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires a GitHub personal access token and likely building the Go binary yourself since installation instructions are minimal.

In plain English

github-release-stats is a command-line tool that pulls release history data from GitHub repositories and tells you how frequently they ship major releases. Specifically, it looks at "x.y.0" releases, meaning significant version milestones like 1.0.0, 2.3.0, or 5.1.0, rather than every minor patch or bugfix. It then calculates the number of those releases, the minimum, average, and maximum number of days between them, and the standard deviation to show how consistent the release cadence is. To use it, you need a GitHub personal access token, which you can generate from your GitHub account. You set that token as an environment variable on your computer, then run the tool and point it at one or more repositories. You can specify repositories individually, or provide a default organization and list multiple repos at once. The tool queries GitHub's API and prints a table showing each repo's release statistics side by side. This tool is useful for engineering managers, open-source maintainers, or anyone evaluating the health and rhythm of a software project. For example, if you're comparing two libraries and want to understand which one ships more reliably, the stats can reveal whether a project releases major versions every few weeks or every few years, and whether that cadence is consistent or erratic. It's also handy for benchmarking your own team's release frequency against well-known projects like Kubernetes or GitHub's own Actions repos. The project is written in Go and is intentionally narrow in scope. It doesn't track every release a project has ever published, it focuses specifically on x.y.0 versions, which typically represent meaningful milestones rather than routine patches. This makes the output easier to interpret but means it won't give you a complete picture of day-to-day development activity. The README doesn't go into detail about installation beyond the usage examples, so you'll likely need to build the Go binary yourself.

Copy-paste prompts

Prompt 1
Help me install and build the github-release-stats Go tool from source. I have Go installed and I'm on macOS. Walk me through cloning the repo, building the binary, and running it against a sample repository like kubernetes/kubernetes.
Prompt 2
I want to compare the release cadence of three GitHub repositories: facebook/react, vuejs/core, and angular/angular. Help me set up my GitHub personal access token as an environment variable and construct the exact command to pass all three repos to github-release-stats.
Prompt 3
I ran github-release-stats and got a table with columns for count, min, average, max, and standard deviation of days between releases. Help me interpret what a high standard deviation means for a project's release health and how to use these numbers when comparing libraries.

Frequently asked questions

What is github-release-stats?

A command-line tool written in Go that fetches GitHub release history and calculates how frequently a project ships major versions, showing stats like average days between releases and release consistency.

What language is github-release-stats written in?

Mainly Go. The stack also includes Go, GitHub API, CLI.

Is github-release-stats actively maintained?

Dormant — no commits in 2+ years (last push 2023-10-05).

How hard is github-release-stats to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is github-release-stats for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.