wospm/checker

A checker for project owners to measure their open source project.

Maintainers

Details

github.com/WOSPM/checker

Source

Issues

Fund package maintenance!
Patreon

Installs: 641

Dependents: 0

Suggesters: 0

Security: 0

Stars: 7

Watchers: 4

Forks: 1

Open Issues: 3

Type:project

0.4.0 2021-06-01 17:26 UTC

README

All Contributors Markdown Linter Checks All PHP Versions WOSPM CircleCI

A checker for project owners to measure their open source project if it is a welcoming project for contributors or not.

WOSPM Checker

Table Of Contents

Introduction

wospm-checker is a commandline tool to measure how an open source project welcomes users and possible contributors. The tool checks the repository against a list of metrics. The metrics are mostly inspired by Github's Open Source Guides.

How To Install And Use

Install the package with composer.

composer global require wospm/checker

You can use --help parameter to how the options and other information of the command.

wospm-checker --help

WOSPM Checker version: 0.0.1
Options:
    --output            The format of output. JSON, READABLE (Default), NO, HTML.
    --verbose           Show the progress or not. (0 => No, 1 => Detailed,
                        2 => Dots)
    --no-colors         Disable the console colors. It is enabled by default.
    --strict            Enable strict mode. The script will have a higher
                        bound to give success code.
    --version           Show version.
    --help              Print this help.

You can check your project by running the wospm-checker command in the root folder of your repo.

/full/path/to/wospm-checker

alt text

Github Action

It is also ready on Github marketplace as an action with name "WOSPM Checker Github Action" to use in your pipeline.

To Be Considered

GitHub Rest API Rate Limit ❗❗❗

wospm-checker uses GitHub Rest API to fecth repository information in some of the metric checks. There some limits in using this API. When you use wospm-checker very frequently, you may hit the wall of anonymous limit of the API.

Client error: `GET https://api.github.com/repos/user/repo/labels` resulted in a `403 Forbidden` response:
{
  "message": "API rate limit exceeded for XX.XX.XX.XXX. (But here's the good news: Authenticated requests get a higher (truncated...)

You can use your personal access token to have a bigger rate limit. In order to do this, you need to create a YML file with name .wospm under the root folder of the repository to be checked.

github:
    auth_token: PERSONAL_ACCESS_TOKEN

WOSPM Metrics

WOSPM metrics are measures to make quantitative assessments about the open sourse projects if they are contributor friendly or not. They are not scientific values which are mostly derived from Open Source Guides.

Metric Rules

  1. Every metric should check only one simple case
  2. Metrics can be dependent to each other (If there is no README, no need to make any check in README content etc.)
  3. Every metric should have a unique WOSPMXXX number and a unique title (uppercase and snake-case).

For more information about adding a new metric to the project, please Add New Metric section.

List of Existing Metrics

To see the details of the metrics, click the metric code for detailed document.

Badges

After the check, the checker will generate a overall status for the project. There types of status are considered;

  • Perfect: It means that the porject covers 100 percent of the metrics. Perfect
  • Welcoming: It means that the project covers atleast 90 percent of the metrics. Welcoming
  • Not Ready: It means that the project is not ready to be accepted as Welcoming. The project covers between 50 and 90 percents of the metrics. Not Ready
  • Bad: I means that the project is in very bad status. The coverage is under 50 percent. Bad

The checker generates the badge code of the project at the end of the the execution.

Contributing

See CONTRIBUTING.md for information.

Code of Conduct

See CODE_OF_CONDUCT for information.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

By all-contributors.

Contributions of any kind welcome!