Skip to main content

Generate PDF, MS Word and Excel documents from templates in Django.

Project description Documentation Status Dependencies

Generate templated documents within Django in any format supported by LibreOffice: texts, spreadsheets, presentations etc.


  • Python 2.7 or 3.4+

  • Django >= 1.8

  • A recent LibreOffice version (>=4.3.0) supporting LibreOfficeKit API.

Example usage

Create a sample.odt document (make sure it’s in OpenDocument format) and put it in your Django templates folder. It should look something like this:

Then write a view to generate documents from this template:

from templated_docs import fill_template
from templated_docs.http import FileResponse

def get_document(request):
    A view to get a document filled with context variables.
    context = {'user': request.user}  # Just an example

    filename = fill_template('sample.odt', context, output_format='pdf')
    visible_filename = 'greeting.pdf'

    return FileResponse(filename, visible_filename)

Navigate to the url your view is connected to, and you’ll see a rendered and converted document:

For more examples, see the examples/ subfolder in the repository. More detailed documentation is available on


Templated-docs was written by Alex Morozov.

As the repository is left idle for 2 years, Sian Lerk Lau has forked and resume the task of updating the module.

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

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

jpt-templated-docs-0.4.0.tar.gz (48.1 kB view hashes)

Uploaded source

Built Distribution

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page