spack/spack < back About the CFA

software checklist 0

Contributor Friendliness Assessment for spack/spack

The Contributor Friendliness Assessment makes an effort to assess a software project for contributor friendliness.

CFA-branding

  • GitHub repository has logo, graphics, or other decoration
  • Documentation has logo, graphics, or other decoration.

CFA-popularity

  • Number of stars at least 50
  • Number of forks at least 50

CFA-description

  • GitHub repository description (modified with “edit” button) is filled in.
  • The description is also provided at the top of the README.md
  • Clearly states similar projects, competitors, prior art, etc.

CFA-need

  • Use cases are clearly stated in the README.md
  • The project does not use domain-specific jargon, but if it does, it is clearly explained or offers references.

CFA-license

  • The GitHub repository has a clear license
  • The license is an OSI-approved license

CFA-build

  • The documentation or README.md states how to build or install the software.
  • The project uses an established build framework or strategy
  • Requirements or dependencies are clearly stated.
  • The software can quickly output a version.

CFA-examples

  • The README.md has one or more examples of usage.
  • The documentation has an expanded set of examples (e.g., tutorials)

CFA-documentation

  • The project has a clear link to documentation
  • GitHub repository metadata has link to documentation
  • Number of clicks to getting started guide (from repository)
  • The documentation has a getting started guide
  • The documentation has a process for contributing, or a contributor guide.
  • The documentation renders in a web interface for a more user-friendly exploration.
  • Documentation renders from a readable, plain-text format
  • Documentation is served in version control alongside the source code.
  • Different versions of documentation for various releases are available.

CFA-support

  • A support contact or email is provided.
  • The user is not required to join a mailing list or slack (but they may be options)
  • The project has issue templates to help the user submitting a new issue.

CFA-developer

  • The project has a CHANGELOG and/or provides changes in release notes.
  • The project provides a pull request template to guide the developer through steps.
  • A container is provided for quick usage/interaction.

CFA-quality

  • Naming of variables, classes, and functions is easy to understand.
  • The code is robustly commented.
  • Files and directories are organized meaningfully.

CFA-tests

  • The repository has tests.
  • The documentation states how to run the tests.
  • The tests are run with continuous integration.
  • Tests verify successful build and installation.

CFA-coverage

  • The repository reports code coverage.
  • The coverage is >= 90 %

CFA-format

  • The documentation states how to lint and check formatting.
  • Tests checks for formatting.

CFA-outreach

  • The project has been presented at one or more conferences.
  • The project has been published in a journal.
  • The project has a social media handle or account.

Badge

Want to include this badge with your project?