A Heroku buildpack for hosting static sites generated by pelican and served by apache.
Python Shell
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Heads up!

There is an official Pelican buildpack for Heroku available over at getpelican/heroku-buildpack-pelican.

As I'm no longer actively working on or using this one, I'd recommend using the official buildpack.

Heroku buildpack: Pelican

This is a Heroku buildpack for statically generated blogs and websites. It uses virtualenv, pip and Pelican.


Example usage:

$ ls
content/  pelican.conf.py

$ heroku create --stack cedar --buildpack https://github.com/pearkes/heroku-buildpack-pelican.git

$ git push heroku master
-----> Heroku receiving push
-----> Fetching custom buildpack... done
-----> Pelican app detected
-----> Preparing virtualenv version 1.6.4
       New python executable in ./bin/python
       Installing setuptools............done.
       Installing pip...............done.
-----> Installing pelican using pip version 1.0.2
-----> Bundling Apache v2.2.19
-----> Generating static content for deploy with default theme



A content directory, with Markdown or reST files for posts. For example usage of content structure, check-out the Pelican sample.


A pelican.conf.py file must exist in the root directory of your project.


For use of a custom theme, instead of Pelican's default, a theme/ directory must exist in the root. The theme/ directory should have the following structure:

├── static
│   ├── css
│   └── images
└── templates
    ├── archives.html    // to display archives
    ├── article.html     // processed for each article
    ├── categories.html  // must list all the categories
    ├── category.html    // processed for each category
    ├── index.html       // the index. List all the articles
    ├── page.html        // processed for each page
    ├── tag.html         // processed for each tag
    └── tags.html        // must list all the tags. Can be a tag cloud.

For more on themes, visit the Pelican documentation.

Local Developement


$ pip install pelican markdown pygments docutils


$ ls 
content/ pelican.conf.py

$ pelican . -s pelican.conf.py

Or, with a theme:

$ ls 
content/ theme/ pelican.conf.py

$ pelican . -s pelican.conf.py -t theme/

Open your generated files:

$ open output/index.html