Skip to main content

Simple contact form for Kotti sites

Project description

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


  • Tetsuya Morimoto

  • Christian Neumann

  • Marco Scheidhuber

  • Andreas Kaiser

For a complete list of contributors, see


0.5.1 - 2016-05-25

  • Allows to override templates in other addon. [castaf]

0.5 - 2014-11-11

  • Migrate to Bootstrap 3. This requires Kotti>=0.10b1 and is a backward incompatible change if you have customized any template!

0.4.1 - 2014-11-11

  • Fix the RecaptchaWidget serializer that hasn’t been working at all before.

0.4 - 2014-11-11

  • Integrate optional captcha service for the contact form.

  • Require Kotti>=0.9.2

  • Add an additional sender column. Using the user supplied email address as the mail sender fails if the sender domain has an SPF record and the receiving mail server checks SPF records. You need to run the migration script or add the column yourself (on SQLite).

0.3 - 2013-11-01

  • Added frech translation. [jon1012]

0.2 - 2013-01-07

  • Implement IDefaultworkflow.

  • Add an additional one column layout for the contact form view.

  • Use decorators for view config.

  • Add fanstatic filter to development.ini.

0.1.1 - 2012-12-28

  • Changes for compatibility with Kotti>=0.8. These changes are not backward compatible. If you want to use kotti_contactform with Kotti<=0.7.x then pin to 0.1.1a5.

  • Use form classes for the form views instead of deprecated generic functions.

  • Use pyramid.includes instead of deprecated kotti.includes.

0.1.1a5 - 2012-08-21

  • Use alembic environment of Kotti for upgrades.

  • Depend on Kotti >0.7

0.1.1a4 - 2012-07-28

  • Fixed source distribution package.

0.1.1a3 - 2012-07-28

  • Changed class row to row-fluid in contact form template.

  • Added Japanese translation.

0.1.1a2 - 2012-06-28

  • Fixed source distribution package.

0.1.1a1 - 2012-06-27

  • Attachment as optional setting.

  • Added database migration with alembic.

0.1.0b4 - 2012-05-21

  • Changed layout.

  • Added possibility for attachments.

0.1.0b3 - 2012-03-16

  • Update models to use Declarative for compatibility with Kotti >= 0.6.

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 (178.5 kB view hashes)

Uploaded source

Supported by

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