Chess.com stats for your GitHub profile, auto-updated via Actions — no server required.
- Free — GitHub Actions + static SVG, no server
- Auto-updates — runs every 6 hours
- 8 styles — premium, editorial, wood, tech, glass, piece, light, light-editorial
- 3 card types — summary (all 4 modes), line chart, hero card
- 72 SVGs — all styles × all card types generated automatically
Settings → Secrets and variables → Actions → Variables
| Name | Value |
|---|---|
CHESS_USERNAME |
your Chess.com username |
Actions → Update Chess.com Stats → Run workflow
chess-stats.svg # summary, premium dark (default)
chess-stats-{style}.svg # summary, other style
chess-stats-{mode}.svg # line chart, premium dark
chess-stats-{mode}-{style}.svg # line chart, other style
chess-stats-{mode}-hero.svg # hero card, premium dark
chess-stats-{mode}-hero-{style}.svg # hero card, other style
{mode}: blitz · rapid · bullet · daily
{style}: editorial · wood · tech · glass · piece · light · light-editorial
(omit style for the default premium dark)
<div align="center">
<img src="https://raw.githubusercontent.com/YOUR_USERNAME/chess_readme_status/main/assets/chess-stats.svg" alt="Chess Stats" />
<br/>
<img src="https://raw.githubusercontent.com/YOUR_USERNAME/chess_readme_status/main/assets/chess-stats-blitz.svg" alt="Blitz" width="45%" />
<img src="https://raw.githubusercontent.com/YOUR_USERNAME/chess_readme_status/main/assets/chess-stats-rapid.svg" alt="Rapid" width="45%" />
</div><div align="center">
<img src="https://raw.githubusercontent.com/YOUR_USERNAME/chess_readme_status/main/assets/chess-stats-blitz-hero-glass.svg" />
<img src="https://raw.githubusercontent.com/YOUR_USERNAME/chess_readme_status/main/assets/chess-stats-rapid-hero-glass.svg" />
</div><a href="https://www.chess.com/member/YOUR_CHESS_USERNAME">
<img src="https://raw.githubusercontent.com/YOUR_USERNAME/chess_readme_status/main/assets/chess-stats.svg" />
</a>Stats are fetched from the Chess.com public API and regenerated every 6 hours via GitHub Actions (cron: "0 */6 * * *"). You can also trigger manually via Actions → Run workflow.
git clone https://github.com/your-username/chess_readme_status.git
cd chess_readme_status
npm install
CHESS_USERNAME=your_username /usr/bin/node scripts/generate-svg.jsMIT — see LICENSE