Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 69 additions & 0 deletions action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: GitHub PR Stats

description: >
Generate repository-level pull request contribution statistics
for a GitHub user and render them as an SVG table.

author: your-name

inputs:
username:
description: GitHub username
required: true

token:
description: >
GitHub token used to query the API.
Defaults to github.token. A PAT can be supplied when additional
repository access is required.
required: false
default: ${{ github.token }}

output:
description: SVG output file path
required: false
default: github-pr-stats.svg

max-rows:
description: >
Maximum number of repositories rendered into the SVG.
Use 0 to render all repositories.
required: false
default: '0'

outputs:
data:
description: Repository PR statistics as JSON

svg-path:
description: Generated SVG file path

repository-count:
description: Number of repositories

pr-count:
description: Total number of pull requests

runs:
using: composite
steps:
- uses: actions/checkout@v7

- name: Install pnpm
uses: pnpm/action-setup@v6

- name: Set node
uses: actions/setup-node@v7
with:
node-version: lts/*
cache: pnpm

- name: Install
run: pnpm i

- name: Generate Github PR Stats
run: tsx ./src/index.ts

branding:
icon: git-pull-request
color: blue
4 changes: 4 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@
"lint:fix": "eslint --fix",
"prepare": "simple-git-hooks"
},
"dependencies": {
"@actions/core": "^3.0.1",
"@actions/github": "^9.1.1"
},
"devDependencies": {
"@antfu/eslint-config": "^9.3.0",
"@lonewolfyx/tsconfig": "^0.0.6",
Expand Down
195 changes: 195 additions & 0 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading