{"id":35749349,"url":"https://github.com/stn1slv/github-stats-cards","last_synced_at":"2026-04-01T23:44:41.604Z","repository":{"id":331488192,"uuid":"1126715758","full_name":"stn1slv/github-stats-cards","owner":"stn1slv","description":"Python CLI \u0026 GitHub Action to generate high-quality SVG statistics cards for your GitHub profile README. Customizable, fast, and dependency-free generation.","archived":false,"fork":false,"pushed_at":"2026-02-20T21:09:32.000Z","size":152,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-21T02:34:04.029Z","etag":null,"topics":["github-stats","github-stats-card","readme-stats"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stn1slv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-02T12:57:30.000Z","updated_at":"2026-02-20T20:21:58.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/stn1slv/github-stats-cards","commit_stats":null,"previous_names":["stn1slv/github-stats-card"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/stn1slv/github-stats-cards","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stn1slv%2Fgithub-stats-cards","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stn1slv%2Fgithub-stats-cards/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stn1slv%2Fgithub-stats-cards/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stn1slv%2Fgithub-stats-cards/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stn1slv","download_url":"https://codeload.github.com/stn1slv/github-stats-cards/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stn1slv%2Fgithub-stats-cards/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29679049,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-21T09:33:50.764Z","status":"ssl_error","status_checked_at":"2026-02-21T09:33:19.949Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github-stats","github-stats-card","readme-stats"],"created_at":"2026-01-06T19:09:49.081Z","updated_at":"2026-04-01T23:44:41.598Z","avatar_url":"https://github.com/stn1slv.png","language":"Python","readme":"# GitHub Stats Card\n\nA Python-based GitHub Action and CLI tool that generates beautiful, high-quality SVG statistics cards for your GitHub profile README.\n\n[![GitHub Marketplace](https://img.shields.io/badge/Marketplace-GitHub_Action-blue.svg?logo=github\u0026style=flat)](https://github.com/marketplace/actions/github-stats-cards)\n[![Python 3.13+](https://img.shields.io/badge/python-3.13+-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![Tests](https://img.shields.io/badge/tests-189%20passed-success.svg)](#testing)\n\n## 🚀 Get Started (GitHub Action)\n\nThe easiest way to use this tool is as a **GitHub Action**. It runs automatically on a schedule and updates your profile SVG files.\n\n### 1. Add to your workflow\n\nCreate or update `.github/workflows/update-stats.yml`:\n\n```yaml\nname: Update GitHub Stats\n\non:\n  schedule:\n    - cron: '0 0 * * *'  # Daily at midnight UTC\n  workflow_dispatch:      # Allow manual trigger\n\njobs:\n  update-stats:\n    runs-on: ubuntu-latest\n    permissions:\n      contents: write\n    steps:\n      - uses: actions/checkout@v4\n      \n      - name: Generate GitHub Stats Card\n        uses: stn1slv/github-stats-card@v1.1.4\n        with:\n          card-type: user-stats\n          username: ${{ github.repository_owner }}\n          token: ${{ secrets.GITHUB_TOKEN }}\n          output: img/github-stats.svg\n          theme: vue-dark\n          show-icons: true\n      \n      - name: Commit and push if changed\n        run: |\n          git config --local user.email \"github-actions[bot]@users.noreply.github.com\"\n          git config --local user.name \"github-actions[bot]\"\n          git add img/*.svg\n          git diff --staged --quiet || git commit -m \"Update GitHub stats [skip ci]\"\n          git push\n```\n\n### 2. Display in your README\n\nUse the `\u003cpicture\u003e` tag to support both **Dark** and **Light** modes automatically:\n\n```markdown\n\u003cdiv align=\"center\"\u003e\n  \u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"img/github-stats-dark.svg\"\u003e\n    \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"img/github-stats-light.svg\"\u003e\n    \u003cimg alt=\"GitHub Stats\" src=\"img/github-stats-dark.svg\"\u003e\n  \u003c/picture\u003e\n\u003c/div\u003e\n```\n\n### 🔗 See it in Action\n- **Demo Profile:** [stn1slv/stn1slv](https://github.com/stn1slv/stn1slv)\n- **Example Workflow:** [refresh-stats.yml](https://github.com/stn1slv/stn1slv/blob/main/.github/workflows/refresh-stats.yml)\n\n---\n\n## ✨ Features\n\n- 🎨 **50+ Built-in Themes** - Choose from a variety of beautiful color schemes\n- 📊 **Comprehensive Stats** - Stars, commits, PRs, issues, reviews, and more\n- 🔤 **Top Languages Card** - Show your most used programming languages with 5 layouts\n- 🚀 **Top Contributions Card** - Show your impact on external repositories with rank levels\n- ⚖️ **Smart Weighting** - Preset rankings (balanced, expertise, diversity) for language stats\n- 📐 **Aligned Layouts** - Compact top-langs card matches stats card width (467px)\n- 🔧 **Highly Customizable** - Customize colors, layout, and content\n- 🚀 **GitHub Actions Ready** - Perfect for automated daily/weekly updates\n- 🎯 **Local Generation** - No external service dependencies\n- 🌐 **Internationalization** - Support for multiple languages (English included)\n\n## 🎨 Available Themes\n\nChoose from 50+ themes like `default`, `dark`, `radical`, `vue`, `tokyonight`, `dracula`, `monokai`, and more.\n\n[**View all themes →**](src/rendering/themes.py)\n\n---\n\n## ⚙️ Configuration (GitHub Action)\n\n### Common Inputs\n| Input | Description | Default |\n| :--- | :--- | :--- |\n| `card-type` | Type of card: `user-stats` (alias: `stats`), `top-langs`, or `contrib` | **Required** |\n| `username` | Your GitHub username | **Required** |\n| `token` | GitHub PAT with `read:user` scope | **Required** |\n| `output` | Output SVG file path | **Required** |\n| `theme` | Theme name | `default` |\n| `hide-border`| Hide card border | `false` |\n| `card-width` | Card width in pixels | Varies |\n\n### Card-Specific Inputs\nDetailed configuration options are available for each card type:\n- **User Stats Card:** `show-icons`, `include-all-commits`, `hide`, `show`, `hide-rank`\n- **Top Languages:** `layout` (normal/compact/donut/pie), `langs-count`, `weighting`, `exclude-repo`\n- **Top Contributions:** `limit`, `exclude-repo`, `contrib-types` (default: `commits,prs`)\n\n[**View full configuration guide →**](EXAMPLES.md)\n\n---\n\n## 💻 CLI Usage\n\nFor local generation or manual usage, you can run the tool as a CLI.\n\n### Installation\n\n```bash\n# Using uv (recommended)\nuv pip install -e .\n\n# Using pip\npip install -e .\n```\n\n### Quick Run (no installation)\n```bash\nexport GITHUB_TOKEN=ghp_your_token\nuv run github-stats-card user-stats -u your-username -o stats.svg\n```\n\n---\n\n## 🌐 GitHub Enterprise Server Support\n\nThis tool is compatible with GitHub Enterprise Server. Configure custom API endpoints:\n\n```yaml\n- name: Generate GitHub Stats Card\n  uses: stn1slv/github-stats-card@v1.1.4\n  env:\n    GITHUB_API_URL: https://github.enterprise.com/api/v3\n  with:\n    card-type: user-stats\n    username: your-username\n    token: ${{ secrets.GHE_TOKEN }}\n    output: stats.svg\n```\n\n---\n\n## 📚 Documentation \u0026 Contributing\n\n- **[Detailed Examples](EXAMPLES.md)** - 13+ use cases and advanced configurations\n- **[Contributing Guide](CONTRIBUTING.md)** - How to help improve this project\n- **[Architecture](src/core/config.py)** - Overview of the codebase structure\n\n## Credits\nInspired by [github-readme-stats](https://github.com/anuraghazra/github-readme-stats). This project is a Python CLI/Action reimplementation designed for reliability and privacy.\n\n## License\nMIT License - see [LICENSE](LICENSE) file for details.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstn1slv%2Fgithub-stats-cards","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstn1slv%2Fgithub-stats-cards","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstn1slv%2Fgithub-stats-cards/lists"}