GitHub Profile Trophy
π Add dynamically generated GitHub Stat Trophies on your README
[](https://github.com/ryo-ma/github-profile-trophy/stargazers)
[](https://github.com/ryo-ma/github-profile-trophy/network/members)
[](https://github.com/ryo-ma/github-profile-trophy/issues)
[](https://github.com/ryo-ma/github-profile-trophy/blob/master/LICENSE)
[](https://twitter.com/intent/tweet?text=Add%20dynamically%20generated%20GitHub%20Trophy%20on%20your%20readme%0D%0A&url=https%3A%2F%2Fgithub.com%2Fryo-ma%2Fgithub-profile-trophy)
You can use this service for free. I'm looking for sponsors to help us keep up with this serviceβ€οΈ
> β οΈ **Notice from the Project Owner**
>
> Hello everyone,\
> I am the owner of this project.
>
> Currently, due to the increase in users and traffic, the cost of maintaining
> this service has become quite high, and it is becoming financially difficult
> to sustain.\
> As costs continue to rise, there is a possibility that the service may have to
> be discontinued.\
> We are now at a stage where monetization and financial support are essential.
>
> Your support in the following ways would be greatly appreciated:
>
> 1. Financial support: [GitHub Sponsors](https://github.com/sponsors/ryo-ma)
> 2. Reducing server load through self-hosting (by forking on GitHub and
> deploying to Vercel)
> 3. Share your github-profile-trophy URL deployed to Vercel for load balancing
> (Send email: saka_ro@yahoo.co.jp or Pull Request)
# Load balancing endpoints
These are endpoints provided by volunteers. Please use these in moderation.
- [https://trophygithubreadmelang.cybee.dpdns.org/](https://trophygithubreadmelang.cybee.dpdns.org/) by [Cyberbee-pro](https://github.com/Cyberbee-pro)
- [https://github-profile-trophy-liard-delta.vercel.app](https://github-profile-trophy-liard-delta.vercel.app/)
by [Adwitya](https://github.com/Adwitya)
- [https://github-profile-trophy-fork-two.vercel.app](https://github-profile-trophy-fork-two.vercel.app)
by [hesreallyhim](https://github.com/hesreallyhim)
- [https://github-profile-trophy-winning.vercel.app](https://github-profile-trophy-winning.vercel.app)
by [hongbo-wei](https://github.com/hongbo-wei)
- [https://github-profile-trophy-kannan.vercel.app](https://github-profile-trophy-kannan.vercel.app)
by [kann4n](https://github.com/kann4n)
- [https://trophy.ryglcloud.net](https://trophy.ryglcloud.net) by
[PracticalRyan](https://github.com/PracticalRyan)
- [https://github-profile-trophy-tawny.vercel.app](https://github-profile-trophy-tawny.vercel.app)
by [vijaypurohit322](https://github.com/vijaypurohit322)
- [https://github-profile-repo.vercel.app](https://github-profile-repo.vercel.app/))
by [HackyCoder0951](https://github.com/hackycoder0951)
- [https://gh-trophy.cdnsoft.net](https://gh-trophy.cdnsoft.net) by
[cromatikap](https://github.com/cromatikap)
- [https://trophygh.kolioaris.xyz](https://trophygh.kolioaris.xyz) by
[kolioaris](https://github.com/kolioaris)
- [https://github-profile-trophy-orcin-eta.vercel.app](https://github-profile-trophy-orcin-eta.vercel.app/)
by [manupawick](https://github.com/manupawickramasinghe)
- [https://github-profile-trophy-reiyua-mirror.vercel.app](https://github-profile-trophy-reiyua-mirror.vercel.app)
by [reiyua](https://github.com/reiyua)
- [https://github-profile-trophy-sigma-one.vercel.app](https://github-profile-trophy-sigma-one.vercel.app/))
by [namankoolwal](https://github.com/namankoolwal)
- [https://trophy.benkou.dev/](https://trophy.benkou.dev/) by [Ben](https://github.com/0x5b62656e5d)
- [https://github-trophies.devomb.com/](https://github-trophies.devomb.com/) by [DevomB](https://github.com/DevomB/Github-Trophies)
- [https://github-profile-trophy-unserori.vercel.app/](https://github-profile-trophy-unserori.vercel.app/) by [unSerori](https://github.com/unSerori)
# Quick Start
Add the following code to your readme. When pasting the code into your profile's
readme, change the `?username=` value to your GitHub's username.
```
[](https://github.com/ryo-ma/github-profile-trophy)
```
## Use theme
Add optional parameter of the theme.
```
[](https://github.com/ryo-ma/github-profile-trophy)
```
**[More detail](#apply-theme)**
# About Rank
Ranks are `SSS` `SS` `S` `AAA` `AA` `A` `B` `C` `UNKNOWN` `SECRET`.
| Rank | Description |
| ---------- | ------------------------------------------------------------------------------------------ |
| SSS, SS, S | You are at a hard to reach rank. You can brag. |
| AAA, AA, A | You will reach this rank if you do your best. Let's aim here first. |
| B, C | You are currently making good progress. Let's aim a bit higher. |
| UNKNOWN | You have not taken action yet. Let's act first. |
| SECRET | This rank is very rare. The trophy will not be displayed until certain conditions are met. |
**NOTE: The `UNKNOWN` rank is denoted by `?`**
## Secret Rank
The acquisition condition is secret, but you can see this.
There are only a few secret trophies. Therefore, if you come up with interesting
conditions, I will consider adding a trophy. I am waiting for contributions.
# About Display details
1. Title name of aggregation target.
2. Current rank.
3. Title according to rank.
4. Target aggregation result.
5. Rank progress bar.
# Optional Request Parameters
- [title](#filter-by-titles)
- [rank](#filter-by-ranks)
- [column](#specify-the-maximum-row--column-size)
- [row](#specify-the-maximum-row--column-size)
- [theme](#apply-theme)
- [margin-w](#margin-width)
- [margin-h](#margin-height)
- [no-bg](#transparent-background)
- [no-frame](#hide-frames)
## Filter by titles
You can filter the display by specifying the titles of trophy.
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&title=Followers
```
If you want to specify multiple titles.
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&title=Stars,Followers
```
You can also exclude the trophies you don't want to display.
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&title=-Stars,-Followers
```
## Filter by ranks
You can filter the display by specifying the ranks.\
`Available values: SECRET SSS SS S AAA AA A B C`
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&rank=S
```
If you want to specify multiple ranks.
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&rank=S,AAA
```
You can also exclude ranks.
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&rank=-C,-B
```
**NOTE: Since `UNKNOWN` is denoted by `?`, in order to include or exclude it you
will have to use `rank=?` and `rank=-?` respectively**
## Specify the maximum row & column size
You can specify the maximum row and column size.\
Trophy will be hidden if it exceeds the range of both row and column.
`Available value: number type`\
`Default: column=6 row=3`
Restrict only row
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&row=2
```
Restrict only column
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&column=2
```
Restrict row & column
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&row=2&column=3
```
Adaptive column
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&column=-1
```
You can set `column` to `-1` to adapt the width to the number of trophies, the
parameter `row` will be ignored.
## Apply theme
Available themes.
| theme |
| --------------------------- |
| [flat](#flat) |
| [onedark](#onedark) |
| [gruvbox](#gruvbox) |
| [dracula](#dracula) |
| [monokai](#monokai) |
| [chalk](#chalk) |
| [nord](#nord) |
| [alduin](#alduin) |
| [darkhub](#darkhub) |
| [juicyfresh](#juicyfresh) |
| [buddhism](#buddhism) |
| [oldie](#oldie) |
| [radical](#radical) |
| [onestar](#onestar) |
| [discord](#discord) |
| [algolia](#algolia) |
| [gitdimmed](#gitdimmed) |
| [tokyonight](#tokyonight) |
| [matrix](#matrix) |
| [apprentice](#apprentice) |
| [dark_dimmed](#dark_dimmed) |
| [dark_lover](#dark_lover) |
| [kimbie_dark](#kimbie_dark) |
| [aura](#aura) |
### flat
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=flat
```
### onedark
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=onedark
```
### gruvbox
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=gruvbox
```
### dracula
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=dracula
```
### monokai
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=monokai
```
### chalk
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=chalk
```
### nord
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=nord
```
### alduin
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=alduin
```
### darkhub
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=darkhub
```
### juicyfresh
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=juicyfresh
```
### buddhism
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=buddhism
```
### oldie
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=oldie
```
### radical
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=radical
```
### onestar
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=onestar
```
### discord
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=discord
```
### algolia
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=algolia
```
### gitdimmed
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=gitdimmed
```
### tokyonight
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=tokyonight
```
### matrix
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=matrix
```
### apprentice
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=apprentice
```
### dark_dimmed
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=dark_dimmed
```
### dark_lover
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=dark_lover
```
### kimbie_dark
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=kimbie_dark
```
### aura
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&theme=aura
```
## Margin Width
You can put a margin in the width between trophies.\
`Available value: number type`\
`Default: margin-w=0`
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&margin-w=15
```
## Margin Height
You can put a margin in the height between trophies.\
`Available value: number type`\
`Default: margin-h=0`
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&margin-h=15
```
## Example layout
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&column=3&margin-w=15&margin-h=15
```
## Transparent background
You can turn the background transparent.\
`Available value: boolean type (true or false)`\
`Default: no-bg=false`
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&no-bg=true
```
## Hide frames
You can hide the frames around the trophies.\
`Available value: boolean type (true or false)`\
`Default: no-frame=false`
```
https://github-profile-trophy.vercel.app/?username=ryo-ma&no-frame=true
```
## Generate an svg file localy
Using the render_svg.ts script you can generate your trophys as an svg file
given your username, (Enviroment Vars: See [env-example](env-example)).
Usage:
```bash
deno run --allow-net --allow-env --allow-read --allow-write ./render_svg.ts USERNAME OUTPUT_DIR THEME
```
## Generate an svg inside Github CI (Workflow)
Using the provided github action you can easly generate the trophy inside an
github workflow. This eliminates the needs of an online service running but you
have to manualy update rerun the action to update the file.
Usage:
```yaml
- name: Generate trophy
uses: Erik-Donath/github-profile-trophy@feature/generate-svg
with:
username: your-username
output_path: trophy.svg
token: ${{ secrets.GITHUB_TOKEN }}
```
## Self-hosting on Vercel
By self-hosting you avoid rate-limits, instances getting paused and you bypass the #439 issue.
1. For people who do not have this repo forked, you need to do that before you can deploy anything.
2. Make an account, connect your GitHub account to Vercel, and import your repo.
3. Go back to GitHub, generate a token, and copy it.
4. Set your token scopes to `read:user` + `public_repo` (only use `repo` if you want private contributions counted).
5. On Vercel's configure screen, add two environment variables and paste the token as the value of each β you can use the same token for both:
```
GITHUB_TOKEN1=your_token
GITHUB_TOKEN2=your_token
```
6. After that you can deploy it.
7. Set Vercel Authentication -> Only Preview Deployments, or your card shows blank.
8. You get a domain which you can use/test, it looks something like this:
```
https://.vercel.app/?username=USERNAME
```
# Contribution Guide
Check [CONTRIBUTING.md](./CONTRIBUTING.md) for more details.
# License
This product is licensed under the
[MIT License](https://github.com/ryo-ma/github-profile-trophy/blob/master/LICENSE).
# π Sponsors
Thank you so much to all the amazing sponsors who support this project! Your
contributions help keep development going and make this work possible.
## π Monthly Sponsors
- [@Leay15](https://github.com/Leay15) - $10 / month
- [@hesreallyhim](https://github.com/hesreallyhim) - $10 / month
- [@pmsosa](https://github.com/pmsosa) β $10 / month
- [@chenfeng-huang](https://github.com/chenfeng-huang) β $10 / month
- [@holly-hacker](https://github.com/holly-hacker) β $2 / month
- [@skillerious](https://github.com/skillerious) β $2 / month (since Aug
17, 2024)
- [@LudovicGardy](https://github.com/LudovicGardy) β $10 / month (since Aug
15, 2024)
- [@alexcastrodev](https://github.com/alexcastrodev) β $10 / month (since Oct
13, 2023, previously $50 / month)
- [@great-work-told-is](https://github.com/great-work-told-is) β $10 / month
(since Apr 12, 2023)
- [@Ilithy](https://github.com/Ilithy) β $5 / month (since Jul 21, 2022)
- [@weakish](https://github.com/weakish) β $2 / month (since Jan 22, 2022)
- [@Kazuhito00](https://github.com/Kazuhito00) β $2 / month (since Jan 19, 2022)
- [@KATO-Hiro](https://github.com/KATO-Hiro) β $2 / month (since Jan 5, 2022)
- [@batazor](https://github.com/batazor) β $2 / month (since Oct 28, 2021)
- [@port19x](https://github.com/port19x) β $2 / month (since Jan 27, 2022)
## π One-Time Sponsors
- [@pronoym99](https://github.com/pronoym99) - $20 (Feb 8, 2026)
- [@hesreallyhim](https://github.com/hesreallyhim) - $100 (Jan 11, 2026)
- [@Seo-4d696b75](https://github.com/Seo-4d696b75) β $10 (Jan 4, 2026)
- [@massif-01](https://github.com/massif-01) β $5 (December 17, 2025)
- [@tapegram](https://github.com/tapegram) β $20 (December 6, 2025)
- [@WilliamCorotan](https://github.com/WilliamCorotan) β $5 (November 5, 2025)
- [@arnabnandy7](https://github.com/arnabnandy7) β $10 (Oct 3, 2025)
- [@JoqarSabon](https://github.com/JoqarSabon) β $5 (May 24, 2024)
- [@syaghoubi00](https://github.com/syaghoubi00) β $5 (Jan 28, 2024)
- [@pylapp](https://github.com/pylapp) β $20 (Jan 15, 2024)
- [@Dobefu](https://github.com/Dobefu) β $10 (Dec 22, 2024)
- [@michele-lorenzoni](https://github.com/michele-lorenzoni) β $10 (Nov
26, 2024)
- [@skillerious](https://github.com/skillerious) β $10 (Aug 17, 2024)