Skip to main content

preppy - a Preprocessor for Python

Project description

Preppy is ReportLab’s templating system. It has been in continuous production use since 2000.

It was released as open source code but never evangelized. We are putting it out on PyPI now because many of our solutions depend on it, and this makes it a lot easier to install (e.g. with a pip requirements file).

Preppy is a single Python module which should be placed directly on the path (i.e. you access it with ‘import preppy’). The setup script does this, but it’s just as effective to grab it from the repo and drop it into your project.

Preppy aims to be absolutely minimal. You embed Python expressions and control structures in your template. It compiles the template into a .pyc file. A preppy template is exactly equivalent to a Python function which accepts parameters and returns text output. We don’t both with include functions, block nesting, filters or any other fancy stuff, because we already have a perfectly good language to do that in.

Preppy is just Python, so you get proper Python tracebacks, with the original line number in the .prep file; you can happily debug through calls to python, preppy, python and more preppy.

Currently the docs and tests are rather old-fashioned, because this dates back to before the unittest module, Sphinx and so on. We’re working on this. It also has ‘more than one way to do things’, which we will be simplifying and deprecating soon before making it available on Python 3.x.

BSD license. See LICENSE.txt for details

  • Andy Robinson, ReportLab, March 2013

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

preppy-2.3.1.tar.gz (42.5 kB view details)

Uploaded Source

File details

Details for the file preppy-2.3.1.tar.gz.

File metadata

  • Download URL: preppy-2.3.1.tar.gz
  • Upload date:
  • Size: 42.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for preppy-2.3.1.tar.gz
Algorithm Hash digest
SHA256 0f12a28ec0fbaefa3dc350039a5c57721297f9b387b1281bd543e0a031caa186
MD5 9226adfdd2618f9091ee338b376d5b87
BLAKE2b-256 a18818cca8695e7a97d5ea9345a448f488adb2d02bc17b1dcdafd5c67ebc989e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page