A simple tool to customize your GitHub contributions graph with any color or theme you want.
Perfect for adding a personal touch to your README β quick and easy, ready in seconds through the website.
See your graph here: https://gitcolors.vercel.app
- π GitHub contributions graph in any color/theme you want
Updates automatically based on your GitHub activity- π Automatically matches light or dark mode β no need to pick one
- π± Looks good on desktop and mobile
- β‘ Easy to integrate into any README or portfolio
- π» Dedicated website to generate and view your graph
- β¨ Beautiful preset themes like Rainbow, Sunset and more
- π¨ Multiple graph customization options
- Go to https://gitcolors.vercel.app
- Enter your GitHub username
- Customize the graph
- Copy the image
- Paste into your README
- Commit and push
Choose how days with no contributions are drawn, with emptyColor:
tint(default) β outlined in a soft version of your color
neutralβ outlined in gray, more contrast against your color
filledβ solid-filled with GitHub's own gray, closest to the real graph
Choose how contribution days are colored, with mode:
solid(default) β every contribution day gets the full color
levelsβ color intensity scales with how many contributions that day had
- π Rainbow
- π Sunset
- π Wave
- π Girly
- π» Dev
- π Rainbow2
- π GitHub (identical to your real contribution graph)
- ππ GitHub Pink (same fixed 5-tone scale, in pink)
- ππ GitHub Blue
- ππ GitHub Purple
- ππ§‘ GitHub Orange
- πβ€οΈ GitHub Red
You can also hit the API directly to generate the image, without going through the site:
https://gitcolors.vercel.app/api/svg?username=YOUR_USERNAME&color=HEX&theme=dark|light&mode=solid|levels&preset=rainbow|sunset|wave|girly|dev|github|githubpink|githubblue|githubpurple|githuborange|githubred&animate=true|false&emptyColor=tint|neutral|filled
colorβ hex color, no#(used whenpresetisn't set)themeβdarkorlightmodeβsolid(flat color) orlevels(intensity-based); ignored by thegithub*presets, which always use their fixed 5-tone scalepresetβ overridescolorwith a built-in palette (rainbow,sunset,wave,girly,dev,github,githubpink,githubblue,githubpurple,githuborange,githubred)animateβ set tofalseto disable the cell fade-in animation (defaulttrue)emptyColorβtint(default) colors empty-day borders in the same hue as your graph;neutraluses a theme-based gray outline instead;filledsolid-fills empty days with GitHub's own gray, for a look closer to the real contribution graph
If you want an image that automatically switches between dark and light depending on the user's system theme, you can set it up like this:
<a href="https://gitcolors.vercel.app" target="_blank" rel="noopener">
<picture>
<source srcset="https://gitcolors.vercel.app/api/svg?username=a104437ana&color=ff2d95&theme=dark&mode=mono&preset=dev&emptyColor=neutral" media="(prefers-color-scheme: dark)" />
<source srcset="https://gitcolors.vercel.app/api/svg?username=a104437ana&color=ff2d95&theme=light&mode=mono&preset=dev&emptyColor=neutral" media="(prefers-color-scheme: light)" />
<img src="https://gitcolors.vercel.app/api/svg?username=a104437ana&color=ff2d95&theme=light&mode=mono&preset=dev&emptyColor=neutral" width="846" height="164" style="height:auto" />
</picture>
</a>Then just replace the values (username, color, theme, mode, preset) with whatever you'd like, following the options described in the API section above.
- Create
.github/workflows/gitcolors.yml - Copy the code below
name: gitcolors
on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch:
push:
branches:
- main
paths:
- '.github/workflows/gitcolors.yml'
jobs:
generate:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Generate gitcolors graph
uses: a104437ana/gitcolors@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITCOLORS_COLOR: ff2d95
GITCOLORS_MODE: solid
GITCOLORS_PRESET: rainbow
GITCOLORS_ANIMATE: "true"
GITCOLORS_EMPTY_COLOR: neutral
- name: Commit and push
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git checkout --orphan output
git add gitcolors.svg gitcolors-dark.svg
git commit -m "Update gitcolors graph" || exit 0
git push -f origin output- Paste into the file you just created
- Copy the code below
<a href="https://gitcolors.vercel.app" target="_blank" rel="noopener">
<picture>
<source srcset="https://raw.githubusercontent.com/your-github-username/your-github-username/output/gitcolors-dark.svg" media="(prefers-color-scheme: dark)" width="846" height="164" style="height:auto" />
<source srcset="https://raw.githubusercontent.com/your-github-username/your-github-username/output/gitcolors.svg" media="(prefers-color-scheme: light)" width="846" height="164" style="height:auto" />
<img src="https://raw.githubusercontent.com/your-github-username/your-github-username/output/gitcolors.svg" width="846" height="164" style="height:auto" />
</picture>
</a>- Replace
your-github-usernamewith your GitHub username - Paste into your README
GITCOLORS_COLOR, GITCOLORS_MODE, GITCOLORS_PRESET, GITCOLORS_ANIMATE and GITCOLORS_EMPTY_COLOR are all optional and follow the same options described in the API section above β remove any you don't need.
Want your GitHub contributions as a garden of flowers instead? Check out sakura garden
If you like this project, please consider giving it a star β