PLEASE READ BEFORE USING: This repository will not receive bug fixes, and might become read-only soon.
Rationale: this library has well-known consistency issues with GitHub-Flavored Markdown rendering. Fixing them would require time investment the maintainer cannot provide. The maintainer is also fatigued by Markdown's library constantly breaking their internal API with each minor release.
Consider instead using pycmarkgfm (PyPi), a lightweight Python 3.5+ wrapper for GitHub's own implementation of GFM from the same author, which is faster, virtually byte-compatible with GitHub rendering, and provides a nice API for managing task lists aka. TODO lists.
This is an implementation of GitHub-Flavored Markdown written as an extension to the Python Markdown library. It aims for, but does not achieve, maximal compatibility with GitHub's rendering.
Tested Python versions are 3.5 to 3.8. Sorry, no Python 2.7 support starting with py-gfm 1.x since the Python Markdown library itself is Python 3 only.
You can browse or download the precompiled documentation on Read the Docs.
To build the Sphinx documentation from source, use:
cd doc && make html
- Fenced code blocks
- Literal line breaks
- Tables
- Hyperlink parsing (
http
,https
,ftp
,email
andwww
subdomains) - Code highlighting for code blocks if Pygments is available
- Mixed-style lists with no separation
- Strikethrough
- Task lists
py-gfm is a pure Python implementation based on the Python Markdown library and therefore cannot reproduce GitHub's own implementation with 100% accuracy.
See the docs for a list of known discrepancies.
BSD-style. See LICENSE.