# Repo Stats Cards > Free GitHub statistics as README cards: enter a username, organization or owner/repo and get public stats from the > GitHub REST API, drawn as themed SVG cards with Markdown to embed them. URL: https://repo-stats-cards.skillsafe.ai/ ## What it does - Accounts and organizations: stars and forks over own public repositories, followers, public repositories, years on GitHub, top languages (by repositories, stars or size), most-starred repositories, and recent public activity per day from GitHub's public event feed (at most the last 90 days and 100 events), with active days and current streak. - Repositories: stars, forks, watchers, open issues and open pull requests (counted separately through GitHub search), language bytes, commits per week for the last 52 weeks with a 12-week trend, top contributors with a bus factor, and weekly issue and pull request flow (opened vs closed, opened vs merged) over the newest 200 items with median time to close an issue, median time to merge a pull request and the share of closed pull requests that were merged. - Cards: Stats, Top languages, Top repositories, Recent activity (accounts); Repository, Languages, Commits per week, Contributors, Issue and PR flow (repositories). Two style families. Cartoon (the default for new cards): cartoon (sunny in light mode, night in dark), cartoon-sunny, cartoon-night, cartoon-candy, cartoon-forest. Classic: auto (follows the reader's light or dark setting), light, dark, slate, paper, ocean. Options: no border, no title. ## Cartoon cards and Pip - Pip is the app's own mascot: a round mint seed sprite with a two-leaf sprout, big eyes and stubby arms. Personality: it grows a leaf for every push and cheers loudest for first commits. Pip stars on Stats, Top languages, Recent activity, Repository and Languages; the other cards keep their classic layout in the cartoon frame. - Everything Pip shows follows fixed rules from the stats (no randomness; the same numbers draw the same card). In each list the first matching row wins. The table is TOON_RULES in cards.js. - Mood (accounts; act = public events per 30 days = events in the feed / days from the oldest event to the fetch day, at least 30, x 30): sleepy = no public event in the last 30 days; thrilled = act 40+; happy = act 8 to 39; calm = otherwise. Repositories: sleepy = archived or no push for more than 180 days; thrilled = pushed in the last 7 days; happy = in the last 30; calm = otherwise. - Tier (score = the larger of stars earned and followers, or a repository's stars): Constellation 10,000+ (crown, biggest Pip), Supernova 1,000+ (trophy), Star collector 100+ (medal), Rising star 10+ (star), Fresh sprout below 10 (leaf). - Prop (top language; simple drawn shapes, never a language logo): lightning bolt for JavaScript, TypeScript, CoffeeScript; snake scarf for Python, Jupyter Notebook; coffee mug for Java, Kotlin, Scala, Groovy, Clojure; gear for Rust; wrench for C, C++, Assembly, Zig, Objective-C, OpenSCAD; paper plane for Go, Dart, Swift; paintbrush for HTML, CSS, SCSS, Vue, Svelte, Astro, MDX; tiny terminal for Shell, PowerShell, Dockerfile, Makefile, Nix, Batchfile, Vim Script, Emacs Lisp, Lua, Perl; magnifying glass for R, Julia, TeX, MATLAB; a sparkle for anything else. - Title (accounts): Open-source legend (score 10,000+), Marathon committer (streak 14+ days), Star magnet (score 1,000+), Polyglot explorer (5+ languages), Streak keeper (streak 5+), Busy bee builder (20+ active days), Steady gardener (5+ active days), Brand-new explorer (joined less than a year ago), Project collector (20+ public repositories), Seasoned voyager (8+ years), Fresh start, big plans (no public repositories), Curious tinkerer (everyone else). Repositories: Crowd favorite (10,000+ stars), Retired with honors (archived), Fork-friendly hub (1,000+ forks), Fresh off the keyboard (pushed in the last 7 days), Rising project (100+ stars), Tidy little garden (no open issues or pull requests), Growing seedling (everyone else). Titles are always kind. - Cartoon cards are 495 px wide, carry their own background, a soft shadow and dot texture (readable on GitHub's light and dark pages), a title and description for screen readers, and a 2.8-second hello (two small hops and a blink) that is off under prefers-reduced-motion. No scripts, images, fonts or links; system fonts only. - Export: SVG and PNG per card, Markdown for a card committed to your repository (folder configurable, default .github/stats), all Markdown at once, a Markdown stats table, a .md file, the raw snapshot as JSON and the detail table (repositories or contributors) as CSV. Shareable links: #u= and #r=/. ## Live README cards - Signed-in users can press "Get live embed" under any card. POST /api/embed {kind, target, card, theme, options} checks the account or repository on GitHub and returns {id, url, markdown, html}. The url is https://repo-stats-cards.skillsafe.ai/api/card/.svg, where id is the card settings (base64url JSON) plus an HMAC-SHA256 signature, so a link cannot be changed into another card. - GET /api/card/.svg is public (no token). It draws the card from live GitHub data with the same renderer as the page, prints when it was drawn, and sends Cache-Control: public, max-age=21600 with an ETag, so a README shows new numbers about every 6 hours through GitHub's image cache. An invalid id gets an "Invalid card" SVG (404). When GitHub fails, the last good copy is served, or a "Stats temporarily unavailable" SVG cached for 10 minutes. The SVG has no scripts and loads no fonts or images. ## Methods - Bus factor: the fewest non-bot contributors whose commits add up to at least half of the commits GitHub lists (top 100). - Accounts with more than 300 public repositories: totals cover the 300 most recently pushed, and the page says so. - Commit statistics come from GitHub's computed weekly commit activity; GitHub may need a minute to compute them for a repository nobody asked about recently. ## Data source and access GitHub REST API, public endpoints only, fetched by the app's server function (GET /api/user?login=..., GET /api/repo?repo=owner/name, POST /api/embed). These need a free SkillSafe sign-in and cost no credits; live card images (GET /api/card/.svg) need none. Lookups are saved to the user's account and reused for 6 hours. Not affiliated with GitHub. See /api.html. ## Price Free. No model and no credits.