Here are the requirements for a successful review. I have classified the requirements as:
- β those that I think could be relatively easy to check with a script
- π those that need a careful look by a human
- β Could possibly be automated, but I do not know the technology to do it
Requirements for a readme file in an awesome list
- β Has been around for at least 30 days.
That means 30 days from either the first real commit or when it was open-sourced. Whatever is most recent. - π It's the result of hard work and the best I could possibly produce.
- β Non-generated Markdown file in a GitHub repo.
- π Includes a succinct description of the project/theme at the top of the readme. (Example)
- π The repo should have
awesome-list&awesomeas GitHub topics. I encourage you to add more relevant topics. - β Not a duplicate.
- π Only has awesome items. Awesome lists are curations of the best, not everything.
- β Includes a project logo/illustration whenever possible.
- β Either fullwidth or placed at the top-right of the readme. (Example)
- β The image should link to the project website or any relevant website.
- β The image should be high-DPI. Set it to maximum half the width of the original image.
- β Entries have a description, unless the title is descriptive enough by itself. It rarely is though.
- β Includes the Awesome badge.
- β Should be placed on the right side of the readme heading.
- β Should link back to this list.
- β Has a Table of Contents section.
- β Should be named
Contents, notTable of Contents. - β Should be the first section in the list.
- β Should only have one level of sub-lists, preferably none.
- β Should be named
- β Has an appropriate license.
- β Has contribution guidelines.
- β The file should be named
contributing.md. Casing is up to you.
- β The file should be named
- Has consistent formatting and proper spelling/grammar.
- β The link and description are separated by a dash.
Example:- [AVA](β¦) - JavaScript test runner. - β The description starts with an uppercase character and ends with a period.
- π Consistent and correct naming. For example,
Node.js, notNodeJSornode.js.
- β The link and description are separated by a dash.
- β Doesn't include a Travis badge.
You can still use Travis for list linting, but the badge has no value in the readme.