Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub Wrapped

Paste any GitHub username, get a shareable stats card. No login, no backend, nothing about you is stored anywhere -- it runs entirely in your browser and talks directly to the public GitHub API.

Try it live

GitHub Wrapped example card

Why it's honest about what it shows

Tools like this usually get their "commits this year" number from GitHub's GraphQL API, which needs a signed-in token -- not something a static, backend-free site can do without exposing a secret. So this sticks to two kinds of stats, both computed from GitHub's public, no-login REST API:

  • All-time facts (always accurate): member-since year, public repos, followers, total stars earned across your repos, top language, most-starred repo.
  • Recent-activity facts: streak, pushes, busiest day of the week. These come from /events/public, which GitHub caps at roughly the last 90 days (or 300 events) -- the card always shows the actual date range the numbers cover, instead of pretending it's a full year.

No dishonest padding, no fake precision.

Run it locally

It's a static site -- no build step, no dependencies:

git clone https://github.com/Arsham-eyzed/github-wrapped.git
cd github-wrapped
python -m http.server 8000
# open http://localhost:8000

How the card image works

app.js draws the entire card on a single <canvas> -- the same drawing routine is both what you see on the page and the exact source for the downloaded PNG (canvas.toDataURL()), so there's no separate export path that could drift from what's on screen, and no html2canvas-style dependency trying to approximate a DOM screenshot.

Rate limits

GitHub's unauthenticated REST API allows 60 requests/hour per IP, and the Search API (used to rank repos by stars) allows 10/minute -- both shared by anyone on your network making anonymous requests, so it's easy to hit during heavy testing. The app detects this and shows a plain-language message with an estimated retry time instead of a raw error.

License

MIT -- see LICENSE.

About

Paste a GitHub username, get a shareable stats card. No login, no backend, runs entirely in your browser.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages