Skip to content

Repository files navigation

duo-commit

A high-performance, self-hosted dynamic SVG generator service to create custom, ultra-aesthetic SVG README widgets. It seamlessly merges activity from both GitHub and GitLab, highlighting your full open-source footprint.

Features

  • Unified Dual-Platform Contribution Grid (/api/grid): Fetches 365-day contribution data from GitHub and GitLab to render a combined heatmap. Dual-contribution days use an aesthetic diagonal split gradient!
  • Open Source Footprint (/api/impact): Dedicated visual callout showing total Merged MRs/PRs and LoC modified.
  • Combined Stats (/api/stats): Shows the platform share ratio visual bar and total contribution counts.

Getting Started

  1. Clone the repository.
  2. Run npm install.
  3. Copy .env.example to .env and fill in your details:
    • GITHUB_TOKEN (Needs read:user and repo scopes)
    • GITHUB_USERNAME
    • GITLAB_TOKEN (Needs read_api scope)
    • GITLAB_USERNAME
  4. Run npm run dev to test locally.

Deploy to Vercel

  1. Push to your GitHub repository.
  2. Import the project in Vercel.
  3. Add the 4 environment variables in the Vercel dashboard.
  4. Deploy!

GitHub Profile Readme Snippets

Add these to your README.md (replace your-vercel-domain.vercel.app with your actual domain):

Grid

![Duo Commit Grid](https://your-vercel-domain.vercel.app/api/grid?theme=tokyonight)

Impact Spotlight

![Duo Commit Impact](https://your-vercel-domain.vercel.app/api/impact?theme=tokyonight)

Stats

![Duo Commit Stats](https://your-vercel-domain.vercel.app/api/stats?theme=tokyonight)

Polyglot Stack

![Duo Commit Polyglot](https://your-vercel-domain.vercel.app/api/polyglot?theme=catppuccin)

Supported Themes

Append ?theme=... to any route:

  • tokyonight
  • cyberpunk
  • dracula
  • catppuccin

🐱 Animated Pixel Kitty

You can optionally add &kitty=true (or ?kitty=true) to any endpoint to embed a cute, theme-aware pure CSS animated pixel cat wandering across the top of your widgets!

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages