Add contributions on a per-subdirectory basis to better describe monorepo package maintainers
Is your feature request related to a problem? Please describe.
The Carbon Design System primarily uses monorepos, where each repo includes multiple packages. We're looking to recognize contribution in general, but also specify maintainers on a per-package basis.
Describe the solution you'd like
When using the maintenance key (or any key for that matter), be able to specify if that key is specific to a subdirectory of the repo. For example, maybe something like this:
{
"projectName": "carbon",
"projectOwner": "carbon-design-system",
"repoType": "github",
"repoHost": "https://github.com",
"contributors": [
{
"login": "username",
"name": "User Name",
"profile": "https://github.com/username",
"contributions": [
"code",
"doc",
"infra",
"review",
"maintenance"
]
}
]
}
Could be more specific like:
{
"projectName": "carbon",
"projectOwner": "carbon-design-system",
"repoType": "github",
"repoHost": "https://github.com",
"contributors": [
{
"login": "username",
"name": "User Name",
"profile": "https://github.com/username",
"contributions": [
"code",
"doc",
"infra",
"review",
{
"key": "maintenance",
"subDirectories": [
"packages/react",
"packages/styles"
]
}
]
}
]
}
Describe alternatives you've considered
- List GitHub teams / users in CODEOWNERS file and then write a custom solution to use GitHub APIs to fetch team members and user information to determine maintainers on a package basis.
- Manually list names of maintainers in READMEs in each package's folder.
How would that look like on the (overall) table?
How would that look like on the (overall) table?
I would keep it simple and render the same way on the main table. You could get fancy, but there's probably no need.