Github-Sponsorkit使用说明
第一步:在需要添加sponsor模块的repo根目录下新建文件sponsorkit.config.js 该文件会自动输出svg,png和json格式的sponsor信息
import { defineConfig, presets } from 'sponsorkit'
export default defineConfig({
// Rendering configs
width: 800,
formats: ['svg', 'png','json'],
tiers: [
// Past sponsors, currently only supports GitHub
{
title: 'Past Sponsors',
monthlyDollars: -1,
preset: presets.xs,
},
// Default tier
{
title: 'Backers',
preset: presets.base,
},
{
title: 'Sponsors',
monthlyDollars: 0.5,
preset: presets.medium,
},
{
title: 'Silver Sponsors',
monthlyDollars: 1,
preset: presets.large,
},
{
title: 'Gold Sponsors',
monthlyDollars: 5,
preset: presets.xl,
},
],
})
第二步:目录添加package.json文件
{
"private": true,
"scripts": {
"build": "sponsorkit"
},
"devDependencies": {
"sponsorkit": "latest"
}
}
第三步:获取token
SPONSORKIT_GITHUB_TOKEN在头像->Settings->Developer settings->Personal->Tokens添加,需要有read:user
and read:org
权限
其它Token的获取地址如下:
; Patreon provider.
; Create v2 API key at https://www.patreon.com/portal/registration/register-clients
; and use the "Creator’s Access Token".
SPONSORKIT_PATREON_TOKEN=
; OpenCollective provider.
; Create an API key at https://opencollective.com/applications
SPONSORKIT_OPENCOLLECTIVE_KEY=
; and provide the ID, slug or GitHub handle of your account.
SPONSORKIT_OPENCOLLECTIVE_ID=
; or
SPONSORKIT_OPENCOLLECTIVE_SLUG=
; or
SPONSORKIT_OPENCOLLECTIVE_GH_HANDLE=
; If it is a personal account, set it to `person`. Otherwise not set or set to `collective`
SPONSORKIT_OPENCOLLECTIVE_TYPE=
; Afdian provider.
; Get user_id at https://afdian.net/dashboard/dev
SPONSORKIT_AFDIAN_USER_ID=
; Create token at https://afdian.net/dashboard/dev
SPONSORKIT_AFDIAN_TOKEN=
第四步:添加Token 打开repo -> Settings -> Secrets and variables -> Actions, 点击New repository secret 添加你需要的token: 第五步:添加Github action,也就是在.github/workflows文件夹下新建scheduler.yml文件 注意,要修改成你的设置的token名称
name: Scheduler
on:
workflow_dispatch:
schedule:
- cron: '0 16 * * *'
push:
branches: [ main ]
jobs:
update-sponsors:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set node
uses: actions/setup-node@v3
with:
node-version: lts/*
- run: npx pnpm i
- name: Update sponsors
run: npm run build
env:
SPONSORKIT_GITHUB_TOKEN: ${{ secrets.SPONSORKIT_GITHUB_TOKEN }}
SPONSORKIT_GITHUB_LOGIN: versun
SPONSORKIT_AFDIAN_USER_ID: 2cd194b2ae9f11edabcb5254001e7c00
SPONSORKIT_AFDIAN_TOKEN: ${{ secrets.SPONSORKIT_AFDIAN_TOKEN }}
SPONSORKIT_PATREON_TOKEN: ${{ secrets.SPONSORKIT_PATREON_TOKEN }}
- name: Commit
uses: EndBug/add-and-commit@v4
with:
message: "chore: update sponsors.svg"
add: "./sponsorkit/sponsors.*"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
完成,你现在可以去Actions运行workflow,正常情况下会把输出的svg等文件提交到根目录的sponsorkit文件夹下