FormEncode
==========

|PyPI| |Python| |Tests|

.. |PyPI| image:: https://img.shields.io/pypi/v/formencode
   :target: https://pypi.org/project/formencode
   :alt: PyPI

.. |Python| image:: https://img.shields.io/pypi/pyversions/formencode
   :target: https://pypi.org/project/formencode
   :alt: PyPI - Python Version

.. |Tests| image:: https://github.com/formencode/formencode/actions/workflows/run-tests.yml/badge.svg
   :target: https://github.com/formencode/formencode/actions
   :alt: Test Status


Introduction
------------

FormEncode is a validation and form generation package.
The validation can be used separately from the form generation.
The validation works on compound data structures, with all parts being nestable.
It is separate from HTTP or any other input mechanism.


Documentation
-------------

The latest documentation is available at
`www.formencode.org <https://www.formencode.org/>`_.


Testing
-------

Use ``pytest formencode`` to run the test suite.
Use ``tox`` to run the test suite for all supported Python versions.


Changes
-------

See the `What's New <https://www.formencode.org/en/latest/#what-s-new>`_
section of the documentation.
