Simple contact form for Kotti.
Python Mako
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



This is an extension to Kotti that allows to add a simple contact form to your site. build status

Find out more about Kotti

Development happens at


To enable the extension in your Kotti site, activate the configurator:

kotti.configurators =

Please note that kotti_contactform >= 0.4 depends on kotti_settings, so you have to list it in your kotti.configurators too.

kotti_contactform uses pyramid_mailer for sending mails and tries to use your mailserver at localhost:25. If these defaults don't fit your needs, you have to configure pyramid_mailer:

If you add kotti_contactform to an existing Kotti site (i.e. a Kotti installation with an already existing database), you have to initialize the database migration with Kotti's kotti-migrate console script: kotti-migrate stamp_head --scripts=kotti_contactform:alembic.

Database upgrade

If you upgrade to version 0.1.1 or 0.4 you have to migrate your database. The migration is performed with alembic and Kotti's console script kotti-migrate. To migrate, run kotti-migrate upgrade_all --scripts=kotti_contactform:alembic.

For integration of alembic in your environment please refer to the alembic documentation. If you have problems with the upgrade, please create a new issue in the tracker.


Point your browser to http://your.domain/@@settings to get to the settings page or use the submenupoint of 'Site Setup'.

You can specify a default sender address that will be used as the default for newly created contact forms.

You can also enable the use of a captcha in your contact forms. For the captcha the reCAPTCHA service is used. You have to sign up to get a key pair in order to use the service on your site. In the settings you have to save your public and your private key. Have a look at to sign up and get your keys.


Contributions to kotti_contactform are highly welcome. Just clone its Github repository and submit your contributions as pull requests.

When developing kotti_contactform it can be useful to have a dummy SMTP server that doesn't actually send emails but prints them to the console. Fortunately this is very easy with Python:

sudo python -m smtpd -n -c DebuggingServer localhost:1025