Overview
Cadence is a public GitHub shipping calendar. Look up any user, click a day, and share a permalink. It is read-only. There are no accounts.
It is not GitHub, not a score, and not a view into private repositories. Green squares can still include private work; the commit log never does.
- Home opens on a default public profile.
- Every public GitHub user has a shareable page at https://git-cadence.grok.me/u/{username}.
- Copy link or share to X from the header.
- Export a share card, heatmap, CSV, README badge, or embed.
- Compare two users, or open a year recap at /u/{username}/{year}.
Look up a profile
Type a GitHub username, or paste a profile URL like github.com/gaearon. Cadence strips the host and loads the public graph.
- Load takes you to /u/{username} with today selected.
- On the home page, the last username you loaded is remembered in this browser only.
- Try the featured handles under the search field for a known-good public calendar.
A 404 means GitHub has no public user with that login. Rate-limit messages mean GitHub asked Cadence to wait — the heatmap may still work.
The selected day
Click a heatmap square, use Pick day, or pass ?d=YYYY-MM-DD on a profile URL. Future dates are ignored.
- Public commits
- Commits GitHub search reports as authored by that login on that UTC calendar day, on public default branches. Cadence lists up to the first 100.
- GitHub contributions
- The number on that square of GitHub’s contribution graph: commits, pull requests, reviews, and issues, including private work GitHub is allowed to count.
These two numbers often disagree. A green square with an empty log is normal: private repos, issues, reviews, and pull requests still count as contributions.
Year map
The year map is GitHub’s contribution calendar, clipped to today. Last 12 months is the default. Switch to a calendar year with the year chips.
- Square darkness is relative to that user in the selected range, not GitHub’s global 0–4 scale.
- Empty days stay empty. The darkest squares are the top quartile of that user’s non-zero days.
- Selecting a year that does not contain the current day jumps the selection to 31 Dec of that year, or to today for the current year.
Metrics
- Today
- Contribution count on today’s GitHub calendar day.
- Streak
- Consecutive days with at least one contribution, ending today. If today is empty, the run is allowed to end yesterday.
- Longest
- The longest consecutive contribution run inside the selected range.
- Best day
- The day in range with the highest contribution count.
- Weekday rhythm
- Contribution totals grouped by weekday of the GitHub calendar date. The busiest weekday is called out.
- Consistency
- Share of days in range with at least one contribution.
- Shipping days
- Active days over days in range.
- Typical day
- Average contributions on days that were not empty.
- This week
- Contributions in the seven days ending today.
- Last 14 days
- Contribution volume for the two weeks ending on the selected day.
- Hour strip
- When public commits that day were authored, in your browser’s local time.
- Repo mix
- Public repositories that received those commits, capped at the busiest few.
- Longest pause
- Longest run of empty contribution days inside the selected range.
- Current pause
- Consecutive empty days ending today. Zero if today has a contribution.
- Quietest month
- Month in range with the fewest active days, ignoring stubs shorter than two weeks.
Export, badge, embed, API
Export is under the Export menu on a loaded profile. All of these are the same public calendar Cadence already shows.
- Share card downloads an SVG or PNG with name, streak, totals, and the heatmap.
- README badge: https://git-cadence.grok.me/api/badge/{username}.svg — streak, today, and range total.
- Heatmap SVG: https://git-cadence.grok.me/api/heatmap/{username}.svg?year=2025
- JSON calendar: https://git-cadence.grok.me/api/calendar/{username}
- Embed: iframe https://git-cadence.grok.me/embed/{username} (optional ?y=2025).
- CSV and JSON downloads are the day rows for the selected range.
GitHub README image cache can lag a few minutes. The badge is public data with a short cache.
Year recap and compare
Recap is a calendar year: map, weekday rhythm, pauses, public repo languages, and GitHub search totals for commits vs pull requests. Languages are primary language on recently pushed public repos the user owns — not commit volume.
Compare loads two last-12-month calendars. It uses two heatmap fetches, so GitHub may rate-limit if you hammer it.
Keyboard
- ← and → move the selected day along the calendar.
- Home jumps to the first day in range. End jumps to the last.
- Keys are ignored while typing in the username field.
Data and privacy
Cadence only reads public GitHub data. It does not sign in as you, store profiles on a server, or write anything back to GitHub.
- Profile: GitHub users API.
- Heatmap: GitHub’s public contribution calendar HTML, with a public JSON mirror as fallback.
- Commit log: GitHub commit search for author:{login} author-date:{day}.
- Lookups are cached for a few minutes so repeat views of the same user and day stay snappy.
What stays in this browser
On the home page only, the last username you loaded is saved in localStorage so a refresh can reopen it. Profile URLs do not need that. Clear site data and it is gone.
Time zones
Heatmap days follow GitHub’s contribution calendar. Commit search uses GitHub’s author-date as a UTC calendar day. A commit near midnight can land on different days in the two views. The hour strip converts authored timestamps to your local clock.
Limits
- Private repositories never appear in the commit log, even when they shade the heatmap.
- Commit search can mark results incomplete, and Cadence only lists the first 100 public commits for a day.
- GitHub rate limits unauthenticated traffic. If search is limited, the heatmap still tries to load.
- Forks, bots, and unusual author emails can make search miss commits you still see on GitHub.
FAQ
Why don’t the two day counts match?
Contributions include pull requests, reviews, issues, and private work GitHub counts. Public commits are only authored commits on public default branches that search returned for that UTC day.
The square is green but the log is empty.
That usually means the contributions were private, or they were not commits (reviews, issues, pull requests). Cadence still shows the contribution count.
Can I connect my GitHub account?
No. Cadence is public-only on purpose. Connecting an account would imply private data, and this product does not show that.
Who can see a permalink I send?
Anyone with the URL. It is the same public graph GitHub already shows. Do not share a link if you do not want that day’s public commits forwarded.
Is this an official GitHub product?
No. Cadence is an independent dashboard that reads public GitHub pages and APIs. Counts can lag or differ when GitHub changes those surfaces.