A simple PHP website engine and static file generator.
PHP Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
bin Don't try to be clever about the location of PHP anymore. Dec 15, 2013
build Generate the `stable` binary again. Oct 24, 2013
libs Merge changes. Apr 19, 2015
res Removed an exteraneous test line. Jul 19, 2014
src/PieCrust Add warning about 1.x being deprecated. Apr 19, 2015
tests Merged with stable. Jan 1, 2014
.gitignore Implement tags on WordPress SQL import. Fix spacing in character set … Jun 4, 2013
.hgignore Added installer script. Apr 2, 2013
.hgtags Added tag version_1.2.0 for changeset 920aaf7c09b3 Mar 27, 2014
.travis.yml Added config for Travis. Aug 27, 2012
CHANGELOG.markdown Merge with default, bump version to 1.2.0, update CHANGELOG. Mar 27, 2014
composer.json Merge changes. Apr 19, 2015
composer.lock Merge changes. Apr 19, 2015
piecrust.php Remove memory limit for PHP scripts when running chef. Jul 10, 2013


build status

ATTENTION: PieCrust 1.x is deprecated. Please update to PieCrust 2.x. See the official website for details.

PieCrust is a static website generator and lightweight CMS that's all managed with text files. No complex setup, databases, or administrative panels. Simple, beautiful, and yummy.

For more information, along with the complete documentation, visit the official website.


If you want to quickly give it a spin:

bin/chef init mywebsite
cd mywebsite
../bin/chef serve

It should create a new empty site in a mywebsite folder, and then start your default browser to show it to you. Use chef prepare page and chef prepare post to create pages and posts, and edit those in your favorite text editor.

When you're happy, run ../bin/chef bake to generate the final static website, which you'll find in _counter.


There are 2 branches:

  • default (in mercurial) or master (in git): that's the development branch. Everything in there is the very latest stuff, which means it may be broken, it may have backwards incompatible changes, and probably has secret undocumented features.

  • stable (in mercurial) or git-stable (in git): that's the, well, stable branch. It has all the latest bug-fixes, but new features and breaking changes are only introduced after some time being tested in the main branch. Also, this branch has version tags whenever changes are committed.


Check out the CHANGELOG file for new features, bug fixes and breaking changes.