github-lang-box

April 27, 2025 · View on GitHub

简体中文

💻📌 使用 Gist 显示你最常用的编程语言

Aveek-Saha/lang-stats-box 的 Fork,做了一些增强修改。

github-lang-box

npm GitHub Workflow Status License

✨ 增强功能

  • ✅ 更新依赖项并完全使用 TypeScript 重构
  • 📦 发布到 npm,支持通过 npxpnpx 轻松使用
  • 🔑 使用 /user/repos endpoint 获取所有存储库(包括私有存储库)
  • 🎨 支持自定义描述、语言排除和存储库过滤

注意: 由于使用了 /user/repos 接口,如果使用「Fine-grained access tokens」必须具有 metadata:read 权限。

使用方法

作为 CLI 使用

# 直接使用 npx/pnpx 运行
npx github-lang-box [options]

# 或全局安装
npm install -g github-lang-box
github-lang-box [options]

选项:

  • --dry - 预览输出而不更新 Gist

环境变量:

变量描述
GH_TOKEN具有 gistmetadata:read 范围的 GitHub access token
GIST_ID你的 Gist URL 中的 ID:
https://gist.github.com/username/8335e85451541072dd25fda601129f7d
GH_USERNAME你的 GitHub 用户名
EXCLUDE(可选)要排除的语言,使用英文逗号分隔
示例:Jupyter Notebook,CSS,TeX,PHP
EXCLUDE_REPO(可选)要排除的存储库,使用英文逗号分隔
示例:username/repo1,username/repo2
DESCRIPTION(可选)Gist 的自定义描述

GitHub Action 设置

前提条件

  1. https://gist.github.com/ 创建一个新的公共 GitHub Gist
  2. https://github.com/settings/tokens?type=beta 生成一个具有 gistmetadata:read 范围的访问令牌

设置 Workflow

  1. 此 workflow 文件 复制到你的存储库的 .github/workflows/ 目录
  2. 转到你的存储库的 Settings > Secrets
  3. 按上述环境变量表添加所需的密钥
  4. 提交并推送你的更改

致谢

灵感来自 @matchai 的 bird-box

这是 @Aveek-Saha 的 lang-stats-box 的一个 fork。