LinuxmacOSWindows

Where Is the Pelican Config File?

Pelican reads pelicanconf.py at the site root with publish overrides in publishconf.py beside it.

Last updated

Pelican configures from a Python file at the site root. The pelicanconf.py file sets paths, theme, feeds, and plugins for local preview. A publishconf.py file beside it overrides URL and feed settings for deployment.

Content lives in the content folder as Markdown or RST regardless of config. Themes resolve from the theme path named inside. Keep both config files in git and generated output out.

Where Pelican stores this, by platform

Linux
[SiteDir]/pelicanconf.py

Dev config with SITEURL localhost default. publishconf.py overrides for production. Content in content, output in output.

macOS
[SiteDir]/pelicanconf.py

Same root file on Mac. Virtualenv per site keeps plugin versions stable. Regenerate after config edits.

Windows
[SiteDir]\pelicanconf.py

Same file on Windows. Path separators inside follow Python conventions. Publish config stays separate for deploy.

Frequently asked questions

Why do my feed links point at localhost?

The dev config sets SITEURL to localhost by design. Build with publishconf.py for production URLs. Keep the two files distinct in git.

Where does Pelican output the site?

Into output under the site root after pelican runs. That folder is disposable. Serve or deploy from it without hand edits.

Notice an outdated path? Let us know.