MkDocs RSS plugin#

PyPi version badge PyPI - Downloads PyPI - Python Version

codecov Code style: black flake8 Imports: isort pre-commit status 📚 Documentation

A plugin for MkDocs, the static site generator, which creates RSS 2.0 feeds using the creation and modification dates from git log and page metadata (YAML frontmatter).


Minimal mkdocs.yml configuration:

site_description: required. Used as feed mandatory channel description.
site_name: required. Used as feed mandatory channel title and items source URL label.
site_url: required. Used to build feed items URLs.

Minimal plugin option:

  - rss

Full options:

  - rss:
      abstract_chars_count: 160  # -1 for full content
        - tags
      comments_path: "#__comments"
        as_creation: "date"
        as_update: false
        datetime_format: "%Y-%m-%d %H:%M"
      enabled: true
      feed_ttl: 1440
      length: 20
      pretty_print: false
      match_path: ".*"
        utm_source: "documentation"
        utm_medium: "RSS"
        utm_campaign: "feed-syndication"

For further information, see the user documentation.

Following initiative from the author of Material for MkDocs, this plugin provides its own JSON schema to validate configuration: source - documentation.


Clone the repository:

# install project as editable
python -m pip install -U -r requirements.txt

# install development dependencies
python -m pip install -U -r requirements/development.txt

# install git hooks
pre-commit install

# run tests

# install dependencies for documentation
python -m pip install -U -r requirements/documentation.txt

Then follow the contribution guidelines.

Release workflow#

  1. Fill the
  2. Change the version number in
  3. Apply a git tag with the relevant version: git tag -a 0.3.0 {git commit hash} -m "New awesome feature"
  4. Push tag to main branch: git push origin 0.3.0



pip install mkdocs-rss-plugin

Then in your mkdocs.yml:

  - rss


As examples, here come the feeds generated for this documentation:

Or it could be displayed as a Feedly follow button:

Feedly button


RSS logo

Plugin logic is inspired from Tim Vink git-based plugins and main parts of Git stuff are nearly copied/pasted.

Using magic from:

Documentation theme United from mkdocs-bootswatch as a tribute to the classic RSS color scheme: orange and white.