All Contributors

All Contributors

  • Docs
  • GitHub
  • Languages iconEnglish
    • 日本語
    • Deutsch
    • Español
    • Français
    • Bahasa Indonesia
    • 한국어
    • Polski
    • Português (Brasil)
    • Русский
    • 中文

›@all-contributors Bot 🤖

Specification

  • Overview
  • Specification
  • Emoji Key ✨
  • Repository Maintainers
  • Tooling

@all-contributors Bot 🤖

  • Overview
  • Installation
  • Usage
  • Configuration
  • FAQs

CLI

  • Overview
  • Installation
  • Usage
  • Configuration

Project

  • Help us Improve
  • Code of Conduct
  • Who's using it?
Edit

Bot Configuration

You can configure the all-contributors bot behaviour by updating the .all-contributorsrc JSON file. The data used to generate the contributors list will be stored there, and you can configure how you want @all-contributors to generate the list.

You are viewing the 🤖Bot Configuration, which is similar to the CLI Configuration

These are the keys you can specify:

OptionDescriptionExample/Default
projectNameMandatory, name of the project.Example: all-contributors-cli
projectOwnerMandatory, name of the user the project is hosted by.Example: tenshiAMD
repoTypeType of repository. Must be either github or gitlab.Default: github
repoHostPoints to the repository hostname. Change it if you use a self-hosted repository.Default: https://github.com if repoType is github, and https://gitlab.com if repoType is gitlab
filesArray of files to update.Default: ['README.md']
imageSizeSize (in px) of the user's avatar.Default: 100
commitAuto-commit badge when adding contributors.Default: false
commitConventionCommit convention (angular, atom, ember, eslint, jshint, gitmoji, or none).Default: angular
contributorsPerLineMaximum number of columns for the contributors table.Default: 7
contributorsSortAlphabeticallytrue: Sort alphabetically. false: Display in order of addition.Default: false
badgeTemplateDefine your own lodash template to generate the badge.
contributorTemplateDefine your own lodash template to generate the contributor.
wrapperTemplateDefine your own lodash template to wrap the list of contributors
typesSpecify custom symbols or link templates for contribution types. Can override the documented types.
linkToUsageAdds a footer with link to usage (either true or false)Default: true
skipCiMakes the CI ignore the commit. (either true or false)Default: true
contributorsList of contributors for this project, this is updated by @all-contributors add
{
  "projectName": "all-contributors",
  "projectOwner": "all-contributors",
  "repoType": "github",
  "repoHost": "https://github.com",
  "files": ["README.md"],
  "imageSize": 100,
  "commit": false,
  "contributorsPerLine": 7,
  "contributorsSortAlphabetically": false,
  "badgeTemplate": "[![All Contributors](https://img.shields.io/github/all-contributors/<%= projectOwner %>/<%= projectName %>?color=ee8449&style=flat-square)](#contributors)",
  "contributorTemplate": "<a href=\"<%= contributor.profile %>\"><img src=\"<%= contributor.avatar_url %>\" width=\"<%= options.imageSize %>px;\" alt=\"\"/><br /><sub><b><%= contributor.name %></b></sub></a>",
  "wrapperTemplate": "\n<table>\n  <tbody><%= bodyContent %>  </tbody>\n<%= tableFooterContent %></table>\n\n",
  "types": {
    "custom": {
      "symbol": "🔭",
      "description": "A custom contribution type.",
      "link": "[<%= symbol %>](<%= url %> \"<%= description %>\"),"
    }
  },
  "linkToUsage": true,
  "skipCi": true,
  "contributors": []
}

Moving the All Contributors table into a different file

As you know, the default file for the contributors table is README.md. But if your project has tons of contributors, it doesn't make sense to include the All Contributors table in the README.md file. Instead, you can use a different file to do so.

Here are the steps that may help you in achieving that. For the sake of this tutorial, the different file that we'll use is going to be named CONTRIBUTORS.md.

  1. Install the bot. See the Installation page for instructions.

  2. Add your first contributor. See the Bot Usage page for instructions.

  3. Create the CONTRIBUTORS.md file.

  4. Copy the code which can be found in this guide.

  5. Modify the files key in the .all-contributorsrc JSON file to match your new file name.

    {
    "files": [
       "CONTRIBUTORS.md"
    ],
    ...
    }
    
  6. Now you should be good to go. New contributors will be added to this new file instead of the README.md file.

Last updated on 5/12/2023 by Justin Dalrymple
← UsageFAQs →
All Contributors