Cloudflare Docs
Edit this page on GitHub
Set theme to dark (⇧+D)

Deploy a Pelican site

Pelican is a static site generator, written in Python. With Pelican, you can write your content directly with your editor of choice in reStructuredText or Markdown formats.

​​ Create a Pelican project

To begin, create a Pelican project directory. cd into your new directory and run:

$ python3 -m pip install pelican

Then run:

$ pip freeze > requirements.txt

Create a directory in your project named content:

$ mkdir content

This is the directory name that you will set in the build command.

​​ Before you continue

All of the framework guides assume you already have a fundamental understanding of Git. If you are new to Git, refer to this summarized Git handbook on how to set up Git on your local machine.

If you clone with SSH, you must generate SSH keys on each computer you use to push or pull from GitHub.

Refer to the GitHub documentation and Git documentation for more information.

​​ Create a GitHub repository

Create a new GitHub repository by visiting After creating a new repository, go to your newly created project directory to prepare and push your local application to GitHub by running the following commands in your terminal:

$ git init
$ git remote add origin<your-gh-username>/<repository-name>
$ git add .
$ git commit -m "Initial commit"
$ git branch -M main
$ git push -u origin main

​​ Deploy with Cloudflare Pages

To deploy your site to Pages:

  1. Log in to the Cloudflare dashboard and select your account.
  2. In Account Home, select Workers & Pages > Create application > Pages > Connect to Git.
  3. Select the new GitHub repository that you created and, in the Set up builds and deployments section, select Pelican as your Framework preset. Your selection will provide the following information. The build command pelican content refers to the content folder you made earlier in this guide.
Configuration optionValue
Production branchmain
Build commandpelican content
Build directoryoutput
  1. Select Environment variables (advanced) and set the PYTHON_VERSION variable with the value of 3.7.

For the complete guide to deploying your first site to Cloudflare Pages, refer to the Get started guide.

After deploying your site, you will receive a unique subdomain for your project on *

Every time you commit new code to your Pelican site, Cloudflare Pages will automatically rebuild your project and deploy it. You will also get access to preview deployments on new pull requests and be able to preview how changes look to your site before deploying them to production.

​​ Learn more

By completing this guide, you have successfully deployed your Pelican site to Cloudflare Pages. To get started with other frameworks, refer to the list of Framework guides.