CLOMonitor is a tool that periodically checks open source projects repositories to verify they meet certain project health best practices
Go to file
Uchechukwu Obasi 20afb4d85b
Batch 01: Add docs checkset to project repos (#1731)
* Batch 01: Add docs checkset to project repos

Signed-off-by: thisisobate <obasiuche62@gmail.com>

* chore: update changes accordingly

Signed-off-by: thisisobate <obasiuche62@gmail.com>

* chore: nit fix

Signed-off-by: thisisobate <obasiuche62@gmail.com>

---------

Signed-off-by: thisisobate <obasiuche62@gmail.com>
2025-05-29 05:48:34 +00:00
.github Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
.gitpod Add check for CNCF Project Summary table (#1014) 2023-04-04 13:09:16 +02:00
chart Automate annual review notifications (#1102) 2023-05-25 14:14:49 +02:00
clomonitor-apiserver Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
clomonitor-archiver Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
clomonitor-core Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
clomonitor-linter Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
clomonitor-notifier Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
clomonitor-registrar Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
clomonitor-tracker Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
configs Add API server grafana dashboard (#339) 2022-05-24 12:59:41 +02:00
data Batch 01: Add docs checkset to project repos (#1731) 2025-05-29 05:48:34 +00:00
database Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
docs Update docs OpenSSF Scorecard badge with new regexps (#1640) 2024-12-05 07:11:21 +00:00
scripts Document how to add a new check (#729) 2022-11-14 14:42:48 +01:00
web Upgrade frontend dependencies (#1717) 2025-05-06 09:01:19 +00:00
.dockerignore Add Dockerfiles 2022-01-24 14:36:58 +01:00
.gitattributes Switch to GitHub GraphQL API (#288) 2022-05-05 19:36:47 +02:00
.gitignore Fix issue building apiserver image (#257) 2022-04-27 19:18:28 +02:00
.gitpod.yml Fix some issues running gitpod environment (#267) 2022-05-03 19:17:47 +02:00
.graphqlrc.yml Switch to GitHub GraphQL API (#288) 2022-05-05 19:36:47 +02:00
CONTRIBUTING.md Fixed typos and punctuation (#1476) 2024-06-19 13:45:05 +02:00
Cargo.lock Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
Cargo.toml Upgrade backend dependencies and base images (#1716) 2025-05-02 09:00:57 +00:00
LICENSE Add license 2022-01-26 08:39:36 +01:00
OWNERS Add owners file 2022-01-26 08:41:15 +01:00
README.md Add CD foundation (#1343) 2023-11-20 16:21:37 +01:00
code-of-conduct.md Add code of conduct 2022-01-26 08:40:20 +01:00
deny.toml Upgrade backend dependencies and base images (#1686) 2025-02-26 08:59:40 +00:00
yarn.lock Upgrade frontend dependencies (#1696) 2025-03-17 17:08:02 +00:00

README.md

CLOMonitor

Gitpod Ready-to-Code

CLOMonitor is a tool that periodically checks open source projects repositories to verify they meet certain project health best practices.


Projects

clomonitor.io lists most of the projects in the CNCF, LF AI & DATA and CDF foundations. If you notice that a project that belongs to any of those foundations is missing or has some incorrect or missing information, please feel free to submit a pull request with your suggested changes. The YAML data files for the registered foundations can be found in this repository, at the /data path. CLOMonitor checks periodically those data files and applies the corresponding changes as needed.

Every project featured on clomonitor.io will be provided with a badge and report summary that is ready for use in your project repos. Simply click the menu dropdown on your project page and copy+paste the code snippet into your markdown as desired. An example can be seen in the image shown above.

Checks

CLOMonitor runs sets of checks periodically on all the repositories registered in the database. These checks are run every hour, provided the repository has changed since the last time it was checked. In the case of repositories that don't change often, we make sure that they are checked at least once a day anyway. This way we keep reports up to date with the latest checks additions and improvements.

Checks are organized in check sets. Each check set defines a number of checks that will be run on the repository and one or more check sets can be applied to a single repository. At the moment the following sets are supported: code, code-lite, community and docs. Please see the checks documentation for more details.

Linter CLI

The CLOMonitor's linter can also be run locally or from CI workflows. This can be done by using the container image provided or by building the CLI tool from the source.

CLOMonitor delegates some of the security checks to OpenSSF Scorecard. When building from the source, you'll need to install it before running clomonitor-linter locally. The container image already includes the scorecard binary, so if you opt for using it you are ready to go.

Both CLOMonitor and Scorecard use the GitHub GraphQL API for some checks, which requires authentication. A GitHub token (with public_repo scope) must be provided via the GITHUB_TOKEN environment variable to authenticate those requests.

Using Docker

You can run the linter CLI tool from Docker by running the following command:

$ export GITHUB_TOKEN=<your token>

$ docker run -it \
  --volume $PWD:/repo \
  --env GITHUB_TOKEN=$GITHUB_TOKEN \
  public.ecr.aws/clomonitor/linter clomonitor-linter \
    --path /repo \
    --url https://github.com/<org>/<repo>

Note: the command assumes the current working directory is the repo you would like to lint. Please adjust the repo url as needed.

CI workflow integration

An example of how to integrate CLOMonitor's linter with GitHub Actions can be found in the Artifact Hub repository.

Building from source

You can also build the CLOMonitor's linter CLI tool from the source by using Cargo, the Rust package manager:

$ cargo install --git https://github.com/cncf/clomonitor clomonitor-linter

$ clomonitor-linter --help

Contributing

Please see CONTRIBUTING.md for more details.

You can find some general information about how to work on this repo in the architecture and the development environment setup documents.

Code of Conduct

This project follows the CNCF Code of Conduct.

License

CLOMonitor is an Open Source project licensed under the Apache License 2.0.