freebsdcontribs

Over 30 years of FreeBSD development activity, packaged for R.

This dataset covers two aspects of the FreeBSD project:

No personal information is included. Authors are counted, not identified.

Installation

# devtools::install_github("chrislongros/freebsdcontribs")
install.packages("freebsdcontribs", repos = c('https://chrislongros.r-universe.dev', 'https://cloud.r-project.org'))

Datasets

Dataset Rows Granularity Source What it measures
freebsd_commits 953,162 Per-commit Git repo Every commit with timestamp and author
freebsd_daily_commits 11,882 Daily Git repo Commits per day
freebsd_daily_authors 2,041 Daily Git repo First-time committers per day
freebsd_contributors 147 Monthly Phabricator New signups per month
freebsd_contributors_daily 2,531 Daily Phabricator New signups per day

From git repository (complete data)

freebsd_commits

Every individual FreeBSD commit with full timestamp (to the second) and anonymized author ID.

Column Type Description
timestamp POSIXct Commit timestamp in UTC
author_id character Anonymized 12-character author hash

freebsd_daily_commits

Column Type Description
date Date Commit date
commits integer Commits that day
cumulative_commits integer Running total

953,162 total commits across 11,882 active days (1993-2026)

freebsd_daily_authors

Column Type Description
date Date Date of first commit
new_authors integer New committers that day
cumulative_authors integer Running total

3,323 unique committers over the project's lifetime

From Phabricator (signup data)

freebsd_contributors (monthly)

Column Type Description
month Date First day of each month
new_contributors integer New signups that month
cumulative integer Running total

freebsd_contributors_daily (daily)

Column Type Description
date Date Signup date
new_contributors integer New signups that day
cumulative integer Running total

7,602 total signups (November 2013 - March 2026). Note: signups != committers. Many people register but never commit.

Quick start

library(freebsdcontribs)

# Cumulative commits over time
data(freebsd_daily_commits)
plot(freebsd_daily_commits$date, freebsd_daily_commits$cumulative_commits,
     type = "l", lwd = 2, col = "red",
     xlab = "Date", ylab = "Total Commits",
     main = "FreeBSD Cumulative Commits (1993-2026)")

# Committer growth
data(freebsd_daily_authors)
plot(freebsd_daily_authors$date, freebsd_daily_authors$cumulative_authors,
     type = "l", lwd = 2, col = "steelblue",
     xlab = "Date", ylab = "Unique Committers",
     main = "FreeBSD Committer Growth")

Plots

Cumulative Commits

Daily Commits Rolling Average

Cumulative Committers

Hour of Day

Commit Heatmap

Signups vs Committers

Annual Commits

Daily Signups

Sources

See also

For multi-project comparison (FreeBSD, OpenBSD, NetBSD, PostgreSQL), see osscontribs.

License

CC0 — use it however you like.