mirror of
https://github.com/tiennm99/ghstats.git
synced 2026-08-30 20:21:33 +00:00
Split each contribution year into quarterly windows. commitContributionsByRepository caps at 100 repos per query and drops the remainder without signalling it, which a prolific year hits: 2026 returned exactly 100 where the quarterly union returns 108. Warn when a window still comes back at the ceiling instead of reporting a complete list. Add -include-org-repos / include_org_repos so org-owned repos the user administers count toward stars, repo count, repos-per-language and top-starred. Off by default, since enabling it moves those totals for every existing caller. Commit-driven cards already covered org repos through the seed list. Org repos carrying only read or write access are dropped via viewerPermission. Rename Profile.PublicRepos to RepoCount and drop "public" from the card label: the count tracks the fetch filters and includes private repos whenever the token can see them.
81 lines
2.6 KiB
YAML
81 lines
2.6 KiB
YAML
name: ghstats-cards
|
|
description: Generate GitHub profile summary SVG cards (profile, languages, stats, productive time, contributions)
|
|
author: tiennm99
|
|
branding:
|
|
icon: bar-chart-2
|
|
color: purple
|
|
|
|
inputs:
|
|
user:
|
|
description: GitHub username to summarize
|
|
required: true
|
|
token:
|
|
description: |
|
|
Personal access token (classic PAT) with at least `read:user` and `repo` scopes.
|
|
The default GITHUB_TOKEN works for public repos but has no access to private stats.
|
|
required: false
|
|
default: ${{ github.token }}
|
|
out:
|
|
description: Output directory for the generated SVG cards
|
|
required: false
|
|
default: output
|
|
themes:
|
|
description: Comma-separated theme ids, or `all` to render every theme
|
|
required: false
|
|
default: dracula
|
|
tz:
|
|
description: IANA timezone for the productive-time heatmap (e.g. Asia/Saigon)
|
|
required: false
|
|
default: UTC
|
|
start_of_week:
|
|
description: First day of week for heatmap rows and weekday bars (sunday|monday|tuesday|…)
|
|
required: false
|
|
default: sunday
|
|
top_repos:
|
|
description: Optional cap on seed repos probed for commit history (0 = unlimited)
|
|
required: false
|
|
default: "0"
|
|
commits_per_repo:
|
|
description: Max commits sampled per repo (covers last-year and all-time aggregates)
|
|
required: false
|
|
default: "500"
|
|
include_forks:
|
|
description: Include forked repos in stats and commit probing
|
|
required: false
|
|
default: "true"
|
|
include_private:
|
|
description: Include private repos (requires PAT with repo scope; silently no-op otherwise)
|
|
required: false
|
|
default: "true"
|
|
include_org_repos:
|
|
description: |
|
|
Count org-owned repos you administer toward stars, repo count, repos-per-language
|
|
and top-starred. Off by default because it changes those totals; commit-based cards
|
|
already include org repos either way. Needs a PAT with `read:org`.
|
|
required: false
|
|
default: "false"
|
|
commit_changes:
|
|
description: Whether to commit the generated cards back to the repo
|
|
required: false
|
|
default: "false"
|
|
commit_message:
|
|
description: Commit message used when commit_changes is true
|
|
required: false
|
|
default: "chore: update ghstats cards"
|
|
commit_branch:
|
|
description: Branch to commit to (defaults to the current ref)
|
|
required: false
|
|
default: ""
|
|
author_name:
|
|
description: Git author name for auto-commit
|
|
required: false
|
|
default: "github-actions[bot]"
|
|
author_email:
|
|
description: Git author email for auto-commit
|
|
required: false
|
|
default: "41898282+github-actions[bot]@users.noreply.github.com"
|
|
|
|
runs:
|
|
using: docker
|
|
image: Dockerfile
|