Use Markdown READMEs for repos published to npm#
Status#
Accepted
Context#
As documented in Choosing RST, we use RST for the majority of Open edX documentation. This includes README files in Open edX project repositories.
When browsing packages on https://www.npmjs.com/, however, RST READMEs are not rendered. This results in a “This package does not have a README.” message appearing for packages with RST READMEs.
The npm documentation for README files mentions Markdown exclusively.
Decision#
Markdown must be used for Open edX project repositories that publish packages to npm.
Rejected Alternatives#
Adding RST to Markdown conversion for the README into the build/publish process. It is quite likely that formatting would be lost/broken in the conversion process. This would require README authors to verify their RST changes work post-conversion, adding complexity to the README writing process.
Using a placeholder README file that links to the GitHub repository README. This would require either having both a Markdown and RST README in each repository, or implementing Markdown readme generation into the build/publish process. It would also result in a sub-par experience when browsing Open edX published packages on npmjs.com.
Consequences#
The READMEs for npm packages published as a part of the Open edX project will be fully rendered on npmjs.com.
Any existing RST READMEs in Open edX repositories that publish packages to npm will need to be rewritten in Markdown.