Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation

Pelican Plugins

Important note: We are in the process of migrating plugins from this monolithic repository to their own individual repositories under the new Pelican Plugins organization, a place for plugin authors to collaborate more broadly with Pelican maintainers and other members of the community. The intention is for all the plugins under the new organization to be in the new “namespace plugin” format, which means these plugins can easily be Pip-installed and recognized immediately by Pelican 4.5+ — without having to explicitly enable them.

This transition process will take some time, so we appreciate your patience in the interim. If you would like to help speed up this transition, the following would be very helpful:

  • If you find a plugin here that has not yet been migrated to the new organization, create a new issue under this repository and communicate which plugin you would like to help migrate, after which a Pelican maintainer will guide you through the process.
  • If you have come here to submit a pull request to add your plugin, please consider instead moving your plugin under the Pelican Plugins organization. To get started, create a new issue under this repository with the details of your plugin, after which a Pelican maintainer will guide you through the process.

Whether you are creating a new plugin or migrating an existing plugin, please use the provided Cookiecutter template to generate a scaffolded namespace plugin that conforms to community conventions. Have a look at the Simple Footnotes repository to see an example of a migrated plugin.

The rest of the information below is relevant for legacy plugins but not for the new namespace plugins found at the Pelican Plugins organization.

How to use plugins

The easiest way to install and use these plugins is to clone this repo:

git clone --recursive

and activate the ones you want in your settings file:

PLUGIN_PATHS = ['path/to/pelican-plugins']
PLUGINS = ['assets', 'sitemap', 'gravatar']

PLUGIN_PATHS can be a path relative to your settings file or an absolute path.

Alternatively, if plugins are in an importable path, you can omit PLUGIN_PATHS and list them:

PLUGINS = ['assets', 'sitemap', 'gravatar']

or you can import the plugin directly and give that:

import my_plugin
PLUGINS = [my_plugin, 'assets']

Plugin descriptions

Migration status:

  • (blank): Local hosted plugin is still waiting for migration work.
  • ⚠️ : Deprecated. Can be safely removed from this repository.
  • ❓: Externally maintained plugins that do not need explicit migration from the mono-repo. Migration work need to happen in the original owners' repo.
  • ✔ : Repository has been migrated to Pelican Plugins organization.
Plugin ℹ️ Description

Ace Editor

Always modified

AsciiDoc reader

Replace default <code> by an Ace code editor with settings configure on

Copy created date metadata into modified date for easy "latest updates" indexes

Use AsciiDoc to write your posts.

Asset management

Author images

Auto Pages

Use the Webassets module to manage assets such as CSS and JS files.

Adds support for author images and avatars.

Generate custom content for generated Author, Category, and Tag pages (e.g. author biography)

Backref Translate

Add a new attribute (is_translation_of) to every article/page (which is a translation) pointing back to the original article/page which is being translated

Better code samples

Better code line numbers

Better figures/samples

Better tables


Wraps table blocks with div > .hilitewrapper > .codehilitetable class attribute, allowing for scrollable code blocks.

Allow code blocks with line numbers to wrap

Adds a style="width: ???px; height: auto;" attribute to any <img> tags in the content

Removes the excess attributes and elements in the HTML tables generated from reST.

Provides most (though not all) of Bootstrap's features as rst directives


Category meta

Automatically add bootstraps default classes to your content

Read metadata for each category from an index file in that category's directory.

Category Order

Order categories (and tags) by the number of articles in that category (or tag).

CJK auto spacing

Clean summary

Code include

Collate content

Creole reader


CTags generator

Custom article URLs


Inserts spaces between Chinese/Japanese/Korean characters and English words

Cleans your summary of excess images

Includes Pygments highlighted code in reStructuredText

Makes categories of content available to the template as lists through a collations attribute

Allows you to write your posts using the wikicreole syntax

Minifies all CSS, HTML and JavaScript files in the output path after site generation.

Generates a "tags" file following the CTags in the "content/" directory, to provide autocompletion for code editors that support it.

Adds support for defining different default URLs for different categories

Treat arbitrary metadata fields as datetime objects

Dead Links

Disqus static comments

Manage dead links (website not available, errors such as 403, 404)

Adds a disqus_comments property to all articles. Comments are fetched at generation time using disqus API

Encrypt content


Extract table of content

Password protect pages and articles

Add event start, duration, and location info to post metadata to generate an iCalendar file

Extracts table of contents (ToC) from article.content

Feed summary


Allows article summaries to be used in ATOM and RSS feeds instead of the entire article.

Figure References

Filetime from Git

Filetime from Hg

Footer Insert

Provides a system to number and references figures

Uses Git commit to determine page date

Uses Mercurial commit to determine page date

Add standardized footer (e.g., author information) at end of every article

GA Page View


Gist directive

GitHub wiki

GitHub activity

Global license


Goodreads activity

GooglePlus comments

Display Google Analytics page views on individual articles and pages

Allows an article to contain an album of pictures

This plugin adds a gist reStructuredText directive.

Converts a flat github wiki into a structured read only wiki on your site

On the template side, you just have to iterate over the github_activity variable

Allows you to define a LICENSE setting and adds the contents of that license variable to the article's context

Adds a variable containing definitions extracted from definition lists in articles and pages. This variable is visible to all page templates.

Lists books from your Goodreads shelves

Adds GooglePlus comments to Pelican


Gzip cache


HTML entities

HTML tags for rST

I18N Sub-sites


This plugin's functionality has been superseded by the newer Avatar plugin

Enables certain web servers (e.g., Nginx) to use a static cache of gzip-compressed files to prevent the server from compressing files during an HTTP call

This plugin adds an anchor to each heading so you can deeplink to headers in reStructuredText articles.

Allows you to enter HTML entities such as &copy;, &lt;, &#149; inline in a RST document

Allows you to use HTML tags from within reST documents

Extends the translations functionality by creating internationalized sub-sites for the default site

Looks for and parses an .ics file if it is defined in a given page's calendar metadata.

Image Process


Automates the processing of images based on their class attributes

Lets you add frequently used URLs to your markup using short keywords

Jinja2 Content

JPEG Reader

Allows the use of Jinja2 template code in articles, including include and import statements. Replacement for pelican-jinja2content.

Create image gallery pages based on content of JPEG metadata

Just table

Allows you to easily create and manage tables. You can embed the tables into posts with a simple way.


Allows inclusion of user profile pictures from



A pure CSS lightbox for Pelican.

Allows the definition of custom linker commands in analogy to the builtin {filename}, {attach}, {category}, {tag}, {author}, and {index} syntax

Liquid-style tags

Allows liquid-style tags to be inserted into markdown within Pelican documents

Load CSV

Adds csv Jinja tag to display the contents of a CSV file as an HTML table


Markdown Inline Extension



Pelican reader to enable YAML-style metadata in markdown articles. See also: YAML Metadata

Enables you to add customize inline patterns to your markdown

Looks for a members metadata header containing key/value pairs and makes them available for use in templates.

More Categories

Multiple categories per article; nested categories (foo/bar, foo/baz)

Multi Neighbors

Adds a list of newer articles and a list of older articles to every article's context.

Multi parts posts


Allows you to write multi-part posts

MultiMarkdown reader

A MultiMarkdown reader.

Neighbor articles

Optimize images

Pandoc Org Reader

Python Org Reader

Org Reader

Pandoc reader

Adds next_article (newer) and prev_article (older) variables to the article's context

Applies lossless compression on JPEG and PNG images

Create posts via Emacs Orgmode files


Creates charts from posts metadata

PDF Images

If an img tag contains a PDF, EPS or PS file as a source, this plugin generates a PNG preview which will then act as a link to the original file.

PDF Generator

Automatically exports articles and pages as PDF files

Pelican Cite

Produces inline citations and a bibliography in articles and pages, using a BibTeX file.


Allows you to add estimated reading time of an article


Brings your Flickr photos & sets into your static website

Pelican Genealogy

Add surnames and people so metadata and context can be accessed from within a theme to provide surname and person pages

Pelican Gist tag

Easily embed GitHub Gists in your Pelican articles

Pelican Github Projects

Embed a list of your public GitHub projects in your pages

Jupyter Notebooks

Provides two modes to use Jupyter notebooks in Pelican.

Pelican Jinja2Content


Allows the use of Jinja2 template code in articles, including include and import statements

Lang Category

Make languages behave the same as categories (visitor can browse articles in certain language).

Pelican Link Class

Set class attribute of <a> elements according to whether the link is external or internal

Pelican Mbox Reader

Generate articles automatically via email, given a path to a Unix mbox

Pelican Open graph

Generates Open Graph tags for your articles

Pelican Page Hierarchy

Creates a URL hierarchy for pages that matches the filesystem hierarchy of their sources

Pelican Page Order


Adds a page_order attribute to all pages if one is not defined.

Allows the processing of .rdf vocabularies, and the generation of a lightweight documentation.


Generates a Table of Contents and make it available to the theme via article.toc

Version Generator

Pelican Comment System

A simple version generator which generates an incremented version file.

Allows you to add static comments to your articles


Allows you to embed Javascript and CSS files into individual articles

Pelican Meetup Info

Unity WebGL

Include your group and event information on generated pages and articles

Easily embed Unity3d games into posts and pages

Pelican Vimeo

Enables you to embed Vimeo videos in your pages and articles

Pelican YouTube

Enables you to embed YouTube videos in your pages and articles


Lets you type things like i ♥ :fa-coffee: in your Markdown documents and have it come out as little Font Awesome icons in the browser

Pelican Themes Generator


Generates theme screenshots from the Pelican Themes repository

Enables a kind of permalink using html redirects.


✔ <>

Add a photo or a gallery of photos to an article, or include photos in the body text. Resize photos as needed.

Pin to top


Pin Pelican's article(s) to top "Sticky article"

Allows you to define UML diagrams directly into rst documents using the great PlantUML tool

Post Revision

Post statistics

Random article

Extract article and page revision information from Git commit history

Calculates various statistics about a post and store them in an article.stats dictionary

Generates a html file which redirect to a random article

Read More link


Reddit poster

Inserts an inline "read more" or "continue" link into the last html element of the object summary

Adds article estimated read time calculator to the site, in the form of '<n> minutes'.

You can use the 'subreddit' attribute in you articles to specify which subbreddit the article should be post in aside of your default sub.

Related posts

Adds the related_posts variable to the article's context

Render Math

Render mathematics in content via the MathJax Javascript engine


Replace a text of a generated HTML

Representative Image

RMD Reader

Section number

Extracts a representative image (i.e, featured image) from the article's summary or content

Create posts via knitr RMarkdown files

Adds section numbers for article headers, in the form of 2.3.3


Shaarli poster

Groups related articles into a series

Upload newly redacted articles onto a specified Shaarli instance.

Share post


Creates share URLs for the current article

Easy and explicit inline jinja2 macros

Show Source

Place a link to the source text of your posts.

Similar Posts

Adds a list of similar posts to every article's context.

Simple footnotes

Adds footnotes to blog posts



Static comments

Sub parts



Generates plain-text or XML sitemaps

Render theme template files via Plim, a Python port of Slim, instead of Jinja

Allows you to add static comments to an article

Break a very long article in parts, without polluting the timeline with lots of small articles.

Adds support for subcategories

Allows easy, variable length summaries directly embedded into the body of your articles

Tag Cloud

Textile Reader

Provides a tag cloud of frequently-used post tags

Adds support for Textile markup


Tipue Search

Creates thumbnails for all of the images found under a specific directory

Serializes generated HTML to JSON that can be used by jQuery plugin - Tipue Search


Twitter Bootstrap


Video Privacy Enhancer

W3C validate

Does a touch on your generated files using the date metadata from the content

Defines some rst directive that enable a clean usage of the twitter bootstrap CSS and Javascript components

Reader that renders txt2tags markup in content

Increases user privacy by stopping YouTube, Google, et al from placing cookies via embedded video

Submits generated HTML content to the W3C Markup Validation Service



Add a webring to your site from a list of web feeds (e.g. RSS/Atom)

Minify CSS and JS files on building step

Please refer to the Readme file in a plugin's folder for detailed information about that plugin.

Contributing a plugin

Please refer to the Contributing file.