skillfed

pelican

Static site generator supporting Markdown and reStructuredText

pelican v4.12.0 99.5K downloads/30d#13,020 on PyPI13,331
AGPL license AGPLv3 Active released

What it is and what it does

Pelican is a Python-based static site generator that reads content from text files—Markdown, reStructuredText, or HTML—and compiles them into a complete, static website. It handles the typical workflow of a content site: organizing articles chronologically, generating RSS and Atom feeds, applying themes via Jinja2 templates, and syntax-highlighting code blocks with Pygments. The output is pure HTML, CSS, and JavaScript that can be hosted anywhere without a database or application server.

The package is built for bloggers, documentation authors, and anyone who wants to version-control their content and host it simply. It includes features like multi-language support, theme customization, and a plugin system for extending functionality. Rebuild times are kept fast through caching and selective output writing, making the edit-preview cycle practical for iterative work.

Use it for:

  • Build a personal blog or portfolio site from Markdown files, version-controlled in Git.
  • Generate static documentation sites that can be hosted on any web server or CDN.
  • Migrate content from WordPress or other platforms and maintain it as plain text.
  • Create a multi-language site with separate content trees compiled to a single output.
  • Publish an RSS feed alongside your site, automatically updated from your content.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Pelican is a static site generator that converts text files in Markdown, reStructuredText, or HTML into a complete, ready-to-serve website without requiring a database or server-side code.

Yes. Pelican is a mature, actively maintained static site generator with low installation friction and no known vulnerabilities. It is well-suited for anyone building a blog, documentation site, or portfolio that benefits from version control and simple hosting. The AGPLv3 license is not a barrier for typical personal or private use but should be reviewed if you plan to distribute modified versions.

Install

pelican on PyPI

pip

pip install pelican

uv

uv add pelican

poetry

poetry add pelican

Installing pelican

Before you install

Installation is straightforward with low friction; the package is actively maintained with a recent release and runs on modern Python versions (3.11–3.14). The dependency footprint is modest at 11 runtime packages, all commonly used libraries.

License in practice

Pelican is licensed under AGPLv3, which requires that any derivative work or network-accessible modifications be released under the same license. This is permissive for personal or private use but imposes copyleft obligations if you distribute or host modified versions.

Quickstart

pip install pelican

from pelican import Pelican
from pelican.settings import DEFAULT_CONFIG

settings = DEFAULT_CONFIG.copy()
pelican = Pelican(settings)
pelican.run()

Requires Python 3.11 or later; content files must be in a recognized format (Markdown, reStructuredText, or HTML).

Verify before relying

  • Whether the package includes built-in theme templates or requires separate installation.
  • Performance characteristics for sites with large numbers of articles or pages.
  • Extent of plugin ecosystem and ease of writing custom plugins.

Package facts

License AGPLv3 (agpl)
Python support supports the current Python release (>=3.11)
Install friction low — pure-Python wheel
Runtime dependencies 11 — blinker, docutils, feedgenerator, jinja2, ordered-set, pygments, python-dateutil, rich, unidecode, watchfiles, tzdata
Maintenance actively maintained — 116 days since the last release
Last repo commit
First released
Downloads 99,468/month — #13,020 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pelican-4.12.0-py3-none-any.whl

Keywords: static site generator, static sites, ssg

Development Status :: 5 - Production/StableEnvironment :: ConsoleFramework :: PelicanIntended Audience :: End Users/DesktopLicense :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)Operating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: Implementation :: CPythonTopic :: Internet :: WWW/HTTP :: Dynamic Content :: Content Management SystemTopic :: Internet :: WWW/HTTP :: Site ManagementTopic :: Software Development :: Libraries :: Python ModulesTopic :: Text Processing :: Markup :: HTMLTopic :: Text Processing :: Markup :: MarkdownTopic :: Text Processing :: Markup :: reStructuredText

Tags

static site generatormarkdown to html site builderblog generator pythonstatic website generatorcontent to static htmlreStructuredText site generatorpython ssg
static-site-generatorcontent-managementmarkdown-support

More Python Modules packages