static

Host for static files

0
0
0
1
TypeScript
public

Host for static files

CDN Usage

https://cdn.jsdelivr.net/gh/hugorcd/static/sponsors.svg

Sponsors

HugoRCD sponsors

Regenerating the sponsors image

The Scheduler workflow runs SponsorKit daily at 00:00 UTC, and on pushes to main that change sponsorkit.config.ts, featured-sponsors.ts, vercel-logo.ts, package.json, pnpm-lock.yaml, or .github/workflows/scheduler.yml.

GitHub marks one-time sponsorships as inactive immediately. SponsorKit only fetches them when includePastSponsors is true, and without prorateOnetime they would be treated as past (monthlyDollars: -1). This repo fetches past sponsors and prorates one-shots so they still appear in the matching current tier for the gift’s duration.

Optional featured logos live in featured-sponsors.ts and are off by default. Vercel, when enabled, is drawn as the Antfu-style wordmark banner at the top of sponsors.svg (not as a GitHub avatar). Other featured companies without a custom logo are added as avatars.

Required secret

Add a repository secret named SPONSORKIT_GITHUB_TOKEN:

  1. Create a classic personal access token with the read:user and read:org scopes.
  2. Store it under Settings → Secrets and variables → Actions.

GITHUB_TOKEN is not a substitute. It can list public sponsors, but GitHub omits dollar amounts, and SponsorKit then drops those sponsors from the image.

Manual run

Open Actions → Scheduler → Run workflow.

If GitHub shows that the schedule was disabled after 60 days of inactivity, click Enable workflow on that page (or run gh workflow enable Scheduler) after merging. Daily commits of .github/last-sponsors-run keep the cron enabled even when the sponsor list is unchanged.

Local generation

Set SPONSORKIT_GITHUB_TOKEN in your environment or a secret manager (do not paste it on the command line; that can land in shell history):

printf 'SPONSORKIT_GITHUB_TOKEN: '
read -s SPONSORKIT_GITHUB_TOKEN
echo
export SPONSORKIT_GITHUB_TOKEN
export SPONSORKIT_GITHUB_LOGIN=hugorcd
pnpm i
pnpm build
v0.3.3[beta]