Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
94 lines (66 sloc) 2.96 KB Blog Engine

Author: Jerry Chong
Version: 0.2 (perpetually alpha ;)
Copyright: Creative Commons Attribution-Share Alike

1. Introduction

This is the codebase used for the blog application at is now written using the Flask microframework, and is intended to be run on a Google App Engine account.

2. Features

Basic features:

  • Basic blog publishing with plain URLs eg 'blog/2009/12/31/slug'
  • Content markup with reStructuredText, Markdown and Textile
  • Clean default template with Bootstrap CSS, hAtom microformats
  • Code block syntax highlighting

Several features have been dropped or 'unimplemented' in favor of using third-party services, or due to deprecation:

  • Post creation and editing (via Google App Engine administration)
  • Comments, email notifications and spam checking (via Disqus)
  • Email notifications of new comments (via Disqus)
  • Scheduled datastore backup via Blobstore (via Google App Engine cron jobs)


  • Movable Type/MetaWeblog API

3. Installation depends on the AppEngine Python SDK, the excellent flask-appengine-template, as well as a few Python libraries.

If you've cloned this repository from Github, flask-appengine-template should already have been linked as a git submodule. To populate the folder:

git submodule update --init flask-appengine-template

Symlink or copy out everything under flask-appengine-template/src to the main folder. Python modules under 4. Dependencies can be symlinked/copied to the 'lib' folder, the app will pick them up automatically.

After that, it's the same as starting up AppEngine's development server:

echo 'Just running the dev server'
google_appengine/ .
echo 'and uploading to AppEngine...'
google_appengine/ update .

4. Dependencies

Install with Python package manager of choice:

5. Changelog

  • 0.2: Major rewrite, now based on Flask/Werkzeug
  • 0.1: Initial release with Django

6. License is licensed under the Creative Commons Attribution-Share Alike license.

All third-party parts shamelessly included here are distributed under their respective licenses.

You can’t perform that action at this time.