Code Monkey home page Code Monkey logo

all-contributors-cli's Introduction

all-contributors-cli πŸ€–

Automate acknowledging contributors to your open source projects


Build Status Code Coverage version downloads MIT License

All Contributors PRs Welcome Code of Conduct Watch on GitHub Star on GitHub Tweet

The problem

You want to implement the All Contributors spec, but don't want to maintain the table by hand

This solution

This is a tool to help automate adding contributor acknowledgements according to the all-contributors specification for your GitHub or GitLab repository.

Table of Contents

Installation

This module is distributed via npm which is bundled with node and should be installed as one of your project's devDependencies:

npm install --save-dev all-contributors-cli

Then init the project using init and answer a few questions:

# Use npx for npm@^5.2.0
npx all-contributors init
# Or directly execute the bin
./node_modules/.bin/all-contributors init

Then you can add these scripts to your package.json:

{
  "scripts": {
    "contributors:add": "all-contributors add",
    "contributors:generate": "all-contributors generate"
  }
}

and use them via npm run:

npm run contributors:add -- jfmengels doc
npm run contributors:generate

Usage

Generating the contributors list

Use generate to generate the contributors list and inject it into your contributors file. Contributors will be read from your configuration file.

all-contributors generate

Add/update contributors

Use add to add new contributors to your project, or add new ways in which they have contributed. They will be added to your configuration file, and the contributors file will be updated just as if you used the generate command.

# Add new contributor <username>, who made a contribution of type <contribution>
all-contributors add <username> <contribution>
# Example:
all-contributors add jfmengels code,doc

Where username is the user's GitHub or Gitlab username, and contribution is a ,-separated list of ways to contribute, from the following list (see the specs):

Check for missing contributors

Use check to compare contributors from GitHub with the ones credited in your .all-contributorsrc file, in order to make sure that credit is given where it's due.

all-contributors check

Due to GitHub API restrictions, this command only works for projects with less than 500 contributors.

Configuration

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

These are the keys you can specify:

  • files: Array of files to update. Default: ['README.md']
  • projectOwner: Name of the user the project is hosted by. Example: jfmengels/all-contributors-cli --> jfmengels. Mandatory.
  • projectName: Name of the project. Example: jfmengels/all-contributors-cli --> all-contributors-cli. Mandatory.
  • repoType: Type of repository. Must be either github or gitlab. Default: github.
  • repoHost: Points 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.
  • types: Specify custom symbols or link templates for contribution types. Can override the documented types.
  • imageSize: Size (in px) of the user's avatar. Default: 100.
  • contributorsPerLine: Maximum number of columns for the contributors table. Default: 7.
  • contributorTemplate: Define your own template to generate the contributor list.
  • badgeTemplate: Define your own template to generate the badge.

Contributors

Thanks goes to these wonderful people (emoji key):


Jeroen Engels

πŸ’» πŸ“– ⚠️

Kent C. Dodds

πŸ“– πŸ’»

JoΓ£o GuimarΓ£es

πŸ’»

Ben Briggs

πŸ’»

Itai Steinherz

πŸ“– πŸ’»

Alex Jover

πŸ’» πŸ“–

Jerod Santo

πŸ’»

Kevin Jalbert

πŸ’»

tunnckoCore

πŸ”§

Mehdi Achour

πŸ’»

Roy Revelt

πŸ›

Chris Vickery

πŸ’»

Bryce Reynolds

πŸ’»

James, please

πŸ€” πŸ’»

Spyros Ioakeimidis

πŸ’»

Fernando Costa

πŸ’»

snipe

πŸ“–

Gant Laborde

πŸ’»

Md Zubair Ahmed

πŸ“– πŸ› πŸ’» ⚠️

Divjot Singh

πŸ“–

JoΓ£o Marques

πŸ’» πŸ“– πŸ€”

Andrew Lisowski

πŸ’» πŸ“– ⚠️

This project follows the all-contributors specification. Contributions of any kind are welcome!

LICENSE

MIT

all-contributors-cli's People

Contributors

alexjoverm avatar ben-eb avatar bogas04 avatar brycereynolds avatar chrisinajar avatar davidmenendez avatar fadc80 avatar gantman avatar hipstersmoothie avatar itaisteinherz avatar jamesplease avatar jccguimaraes avatar jerodsanto avatar jfmengels avatar jgsmarques avatar kevinjalbert avatar kevinvangelder avatar m-zubairahmed avatar machour avatar revelt avatar snipe avatar spirosikmd avatar tunnckocore avatar tyler-reitz avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.