6.9 KiB
Contribution Guidelines
Thanks for your interest in contributing to our project. This page will give you a quick overview of how things are organized and, most importantly, how to get involved. Everyone is welcome to contribute, and we value everybody's contribution.
Table of contents
- Add a project
- Update a project
- Improve metadata collection
- Improve markdown generation
- Create your own best-of list
- Code of conduct
Add a project
If you like to suggest or add a project, choose one of the following ways:
- Suggest a project by opening an issue: Please use the suggest project template from the issue page and fill in the requested information.
- Add a project by modifying the projects.yaml and submitting a pull request with your addition. This can also be done directly via the Github UI.
Before opening an issue or pull request, please ensure that you adhere to the following guidelines:
- Please make sure that the project was not already added or suggested to this best-of list. You can ensure this by searching the projects.yaml, the Readme, and the issue list.
- Add the project to the
projects.yaml
and never to theREADME.md
file directly. Use the yaml format and the properties documented in the project properties section below to add a new project, for example:- name: Tensorflow github_id: tensorflow/tensorflow pypi_id: tensorflow conda_id: tensorflow labels: ["tensorflow"] category: ml-frameworks
- Please create an individual issue or pull request for each project.
- Please use the following title format for the issue or pull request:
Add project: project-name
. - If a project doesn't fit into any of the pre-existing categories, it should go under the
Others
category by not assigning any category. You can also suggest a new category via the add or update category template on the issue page.
Update a project
If you like to suggest or contribute a project update, choose one of the following ways:
- Suggest a project update by opening an issue: Please use the update project template from the issue page and fill in the requested information.
- Update a project by modifying the projects.yaml and submitting a pull request with your changes. This can also be done directly via the Github UI.
Before opening an issue or pull request, please ensure that you adhere to the following guidelines:
- Only update the project in the
projects.yaml
and never to theREADME.md
file directly. Use the yaml format and the properties documented in the project properties section below to update a new project. - Please create an individual issue or pull request for each project.
- Please use the following title format for the issue or pull request:
Update project: project-name
.
Project properties
Property | Description |
---|---|
name |
Name of the project. This name is required to be unique on the best-of list. |
github_id |
Github ID of the project based on user or organization and the repository name, e.g. best-of-lists/best-of-generator . |
Optional Properties: | |
category |
Category that this project is most related to. You can find all available category IDs in the projects.yaml file. The project will be sorted into the Others category if no category is provided. |
labels |
List of labels that this project is related to. You can find all available label IDs in the projects.yaml file. |
Supported Package Managers: | |
pypi_id |
Project ID on the python package index (PyPi). |
conda_id |
Project ID on the conda package manager. If the main package is provided on a different channel, prefix the ID with the given channel: e.g. conda-forge/tensorflow |
npm_id |
Project ID on the Node package manager (npm). |
dockerhub_id |
Project ID on the Docker Hub container registry. |
maven_id |
Artifact ID on Maven central, e.g. org.apache.flink:flink-core . |
Please refer to the best-of-generator documentation for a complete and up-to-date list of supported project properties.
Improve metadata collection
If you like to contribute to or share suggestions regarding the project metadata collection, please refer to the best-of-generator repository.
Improve markdown generation
If you like to contribute to or share suggestions regarding the markdown generation, please refer to the best-of-generator repository.
Create your own best-of list
If you want to create your own best-of list, we strongly recommend to follow this guide. With this guide, it will only take about 3 minutes to get you started. It is already set-up to automatically run the best-of generator via our Github Action and includes other useful template files.
Code of Conduct
All members of the project community must abide by the Contributor Covenant, version 2.0. Only by respecting each other we can develop a productive, collaborative community. Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting a project maintainer.