Skip to content

Files

Latest commit

 

History

History
163 lines (148 loc) · 4.84 KB

README.md

File metadata and controls

163 lines (148 loc) · 4.84 KB

🏅 Repository contributors

The contributors plugin lets you display repositories contributors from a commit range, that can be specified through either sha, tags, branch, etc.

It's especially useful to acknowledge contributors on release notes.

By contribution types
By number of contributions

Displaying contributors per categories

🔣 On web instances, sorting contributors per categories is an extra feature and must be enabled globally in settings.json

To configure contributions categories, pass a JSON object to plugin_contributors_categories (use | multiline operator for better readability) with categories names as keys and an array of file glob as values:

plugin_contributors_categories: |
  {
    "📚 Documentation": ["README.md", "docs/**"],
    "💻 Code": ["source/**", "src/**"],
    "#️⃣ Others": ["*"]
  }

Each time a file modified by a contributor match a fileglob, they will be added in said category. Matching is performed in keys order.

➡️ Available options

TypeDescription
plugin_contributors

Display repository contributors

type: boolean
default: no
plugin_contributors_base

Base reference

type: string
plugin_contributors_head

Head reference

type: string
default: master
plugin_contributors_ignored

Contributors to ignore

⏩ Inherits users_ignored
type: array (comma-separated)
default: github-actions[bot], dependabot[bot], dependabot-preview[bot]
plugin_contributors_contributions

Display contributions

type: boolean
default: no
plugin_contributors_sections

Sections to display

type: array (comma-separated)
default: contributors
allowed values:
  • contributors
  • categories
plugin_contributors_categories

Contributions categories

🌐 Web instances must configure settings.json
type: json
default: { "📚 Documentation": ["README.md", "docs/**"], "💻 Code": ["source/**", "src/**"], "#️⃣ Others": ["*"] }

→ Full specification

ℹ️ Examples workflows

name: Contributors with contributions count
uses: lowlighter/metrics@latest
with:
  filename: metrics.plugin.contributors.contributions.svg
  token: ${{ secrets.METRICS_TOKEN }}
  base: ''
  template: repository
  repo: metrics
  plugin_contributors: 'yes'
  plugin_contributors_contributions: 'yes'
name: Contributors by categories
uses: lowlighter/metrics@latest
with:
  filename: metrics.plugin.contributors.categories.svg
  token: ${{ secrets.METRICS_TOKEN }}
  base: ''
  template: repository
  repo: metrics
  plugin_contributors: 'yes'
  plugin_contributors_sections: categories
  plugin_contributors_categories: |
    {
      "🧩 Plugins / 🖼️ templates":["source/plugins/**", "source/templates/**"],
      "📚 Documentation":["README.md", "**/README.md", "**/metadata.yml"],
      "💻 Code (other)":["source/**", "Dockerfile"]
    }