We all have projects that never took off, that are far from usable yet, or that are abandoned for one reason or another. What I propose is adding a single metadata field to each repository, called "status" (or maybe "release_status", or something less ambiguous). The value would be a single string (well, an enum / a fixed set of possibilities), and would be settable via the API and the repository Settings page.
Values could be something like:
Pre-release (not ready for public use yet)
Active (ready for use, under active development)
Inactive (ready for use, but not under active development)
Abandoned (ready for use, but no longer supported or developed at all)
Incomplete (not ready for use, no intent of doing further development)
Ideally, these could also show up as a column in search results, and would be displayed somewhere near the top of the repository and releases pages.
I've heard some people recommend using the Releases feature to handle this. However, even at best (assuming everyone uses semantic versioning correctly), this results in a trinary value - no releases, 0.x releases, and >=1.0 releases. This misses out on what is, in my opinion, the most valuable information: whether the project is in a usable state or incomplete, and whether the owner intends on continuing development.
This isn't just information that I want about other people's projects, and that I want to make available to other people (which I could do acceptably well in the README). It's also something I want for my own personal repositories and my employer's org repositories. I have ~90 repositories and my organization has well over 100, and it's quite a pain to figure out what the status of them all is.
The text was updated successfully, but these errors were encountered:
Would be great to have a standard format where stuff like this could be read from the README (thinking like yaml front-matter, but maybe not so ugly :). I love github, but prefer the idea of keeping the smarts in the plaintext files, rather than in metadata only available via api :)