Django's "formtools" is a set of high-level abstractions for Django forms. Currently for form previews and multi-step forms.

This code used to live in Django proper -- in django.contrib.formtools -- but was separated into a standalone package in Django 1.8 to keep the framework's core clean.

For a full list of available formtools, see

django-formtools can also be found on and installed from the Python Package Index:

Contributing to django-formtools

See CONTRIBUTING.rst for information about contributing patches to django-formtools.

Running tests is as simple as installing Tox and running it in the root Git clone directory:

$ git clone
$ cd django-formtools
$ tox
  congratulations :)

The previous command will run the tests in different combinations of Python (if available) and Django versions. To see the full list of combinations use the -l option:

$ tox -l

You can run each environment with the -e option:

$ tox -e py38-django-AB  # runs the tests only on Python 3.5 and Django A.B.x

Optionally you can also specify a country whose tests you want to run:

$ COUNTRY=us tox

And combine both options:

$ COUNTRY=us tox -e py38-django-AB