Skip to main content

Best way to have Django DRY forms of the next generation.

Project description

Build Status

django-crispy-forms-ng is a fork of django-crispy-forms. The original project, lead by Miguel Araujo, stopped receiving update during early 2014. The problem grew with each Django upgrade, and more and more functionalities relied by it became deprecated.

This fork aims to provide support to modern Django versions, while maintain reasonable support for older versions. The plan is to support all officially supported major Django versions, and all versions between the oldest LTS version to the current version. For example, as of April 2015, the latest Django version is 1.8, while the oldest LTS version is 1.4, so the supported Django versions are 1.4–1.8.

The original django-crispy-forms README follows.

The best way to have Django DRY forms. Build programmatically reusable layouts out of components, having full control of the rendered HTML without writing HTML in templates. All this without breaking the standard way of doing things in Django, so it plays nice with any other form application.

The application mainly provides:

  • A filter named |crispy that will render elegant div based forms. Think of it as the built-in methods: as_table, as_ul and as_p. You cannot tune up the output, but it is easy to start using it.
  • A tag named {% crispy %} that will render a form based on your configuration and specific layout setup. This gives you amazing power without much hassle, helping you save tons of time.

Django-crispy-forms supports several frontend frameworks, such as Twitter Bootstrap (versions 2 and 3), Uni-form and Foundation. You can also easily adapt your custom company’s one, creating your own, see the docs for more information. You can easily switch among them using CRISPY_TEMPLATE_PACK setting variable.


django-crispy-forms is the new django-uni-form. django-uni-form was an application created by Daniel Greenfeld that I leaded since version 0.8.0. The name change tries to better explain the purpose of the application, which changed in a significant way since its birth.

If you are upgrading from django-uni-form, we have instructions for helping you.


This is a teaser of what you can do with latest django-crispy-forms. Find here the gist for generating this form:


For extensive documentation see the docs folder or read it on readthedocs

Special thanks

  • To Daniel Greenfeld (@pydanny) for his support, time and the opportunity given to me to do this.
  • The name of the project was suggested by the fantastic Audrey Roy (@audreyr)
  • To Kenneth Love (@kennethlove) for creating django-uni-form-contrib from which bootstrap template pack was started.


django-crispy-forms supports Django 1.3 or higher with Python 2.6.x, Python 2.7.x and Python 3.3.x. If you need to support Python 2.5 or Django 1.2 you will need to use a version of django-crispy-forms less than 1.3. For earlier versions of Django or Python you will need to use django-uni-form 0.7.0.

Project details

Download files

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

Files for django-crispy-forms-ng, version 2.0.0
Filename, size File type Python version Upload date Hashes
Filename, size django_crispy_forms_ng-2.0.0-py2.py3-none-any.whl (193.6 kB) File type Wheel Python version 3.4 Upload date Hashes View
Filename, size django-crispy-forms-ng-2.0.0.tar.gz (120.0 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page