all-contributors / all-contributors/cli

Node API?

Aberta
#362 0 comentários 0 reações 0 responsáveis Ver no GitHub
type: enhancement
Linguagem predominante
JavaScript
Estrelas
425
Forks
149
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

**Is your feature request related to a problem? Please describe.**

I've started running `npx all-contributors add` as part of scripts in a few places that automate contributor attribution (https://github.com/JoshuaKGoldberg/all-contributors-auto-action, https://github.com/JoshuaKGoldberg/template-typescript-node-package/pull/639). Right now those tools generally use https://github.com/sindresorhus/execa to run the CLI as part of Node scripts. That works, but has a couple of drawbacks:

* Performance: although the overhead of running scripts is a little slow, each script can only add one contributor at a time (https://allcontributors.org/docs/en/cli/usage). It'd be nice to be able to provide an object with multiple contributors, each matched to an array of contribution types.
* Type safety: CLI usage is all string concatenation. It'd be nice to have `.d.ts`-described types.

**Describe the solution you'd like**

Could there be a Node package that exports an async function or two? Vaguely...

```js
import { addContributor, addContributors } from "all-contributors";

await addContributor("MyName", ["bug", "tool"]);

await addContributors({
MyName: ["bug", "tool"],
OtherName: ["design"],
});
```

**Describe alternatives you've considered**

🤷 Can't think of anything else.

**Additional context**

Reusing the `all-contributors` package name feels like a good idea.

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.