Generate customizable SVG contribution charts for your portfolio or README.
A simple tool to customize your GitHub contribution graph and generate a clean SVG image to embed in your portfolio or profile README.
- Interactive Preview: Type any GitHub username to see their graph instantly.
- Custom Themes: Pick from built-in presets or configure custom Hex colors for active/inactive days.
- Tweak Everything: Adjust months (1-48), box sizes, cell spacing, and border radius.
- Unified & Containerized: Single React + Node application with simple Docker/Compose setup.
The backend handles parameters directly via URL queries, including:
months(1-48)boxSize(pixel dimension of grid cells)boxSpacing(pixel spacing between grid cells)borderRadius(border curves for grid cells)inactiveColor(hex code for zero contribution days)minActivityColor(hex code for low contribution days)maxActivityColor(hex code for high contribution days)showLabels(boolean flag to toggle month listings)labelColor(hex code for month labels)
To run the application locally, you will need a personal GitHub access token (minimal read:user scope).
-
Clone the repository:
git clone https://github.com/reazndev/github-chart-builder.git cd github-chart-builder -
Install dependencies:
npm install
-
Setup environment variables: Copy
.env.exampleto.envand fill in your GITHUB_TOKEN:cp .env.example .env
-
Launch in development mode:
npm run dev
Runs both Vite and Express concurrently. Open
http://localhost:5173to view the app.
To build and host using Docker Compose:
- Copy
.env.exampleto.envand specify yourGITHUB_TOKEN(required for querying public contribution graphs). If you want to support private repositories via GitHub OAuth2, also configureGITHUB_CLIENT_ID,GITHUB_CLIENT_SECRET,GITHUB_REDIRECT_URI, and a secureENCRYPTION_KEY. - Spin up the container stack:
The container exposes port
docker compose up -d
8030, serving both the API endpoints and the optimized built frontend assets.
Feel free to open an issue or submit a pull request if you run into bugs or have layout improvements to share!
Reazn Author @reazndev |
This project is MIT licensed — see LICENSE.