An open API service indexing awesome lists of open source software.

https://github.com/tw93/sponsors

Sponsor wall for tw93's open source projects
https://github.com/tw93/sponsors

Last synced: 29 days ago
JSON representation

Sponsor wall for tw93's open source projects

Awesome Lists containing this project

README

          

# sponsors

Sponsor wall for tw93's open source projects, hosted at [cats.tw93.fun](https://cats.tw93.fun).

Supports all projects: [Pake](https://github.com/tw93/Pake), [MiaoYan](https://github.com/tw93/MiaoYan), [Mole](https://github.com/tw93/mole), [Kaku](https://github.com/tw93/kaku), [Waza](https://github.com/tw93/Waza), [Kami](https://github.com/tw93/Kami).

## Structure

- `cats.html` — main sponsor wall page
- `cats.css` — CSS cat animation
- `tailwind.css` — Tailwind source (includes i18n friend-list markers)
- `build.css` — Tailwind output (generated by `npm run build`)
- `scripts/generate-sponsors.js` — fetches GitHub Sponsors via GraphQL, builds `assets/sponsors.svg`
- `data/friends.json` — friend list
- `data/company-sponsors.json` — company sponsors config
- `assets/sponsors.svg` — generated sponsor board SVG (committed for jsDelivr CDN)
- `assets/company-sponsors/` — company logo files

## Development

```bash
npm install
SPONSORS_TOKEN= npm run sponsors
npm run build
```

## Deployment

Deployed on Vercel. The `update-sponsors.yml` workflow runs daily at 02:00 UTC, regenerates `assets/sponsors.svg`, and commits back to main.

Required secret: `SPONSORS_TOKEN` (GitHub fine-grained token with read access to sponsorships).

## Usage

Link to the sponsor wall from any project:

```
https://cats.tw93.fun?name=
```

Embed the sponsor SVG in any README:

```markdown
[![Sponsors](https://cdn.jsdelivr.net/gh/tw93/sponsors@main/assets/sponsors.svg)](https://cats.tw93.fun)
```