Form builders

CMS-based form builders/generators, that staff users can design and create themselves.

Features currently being evaluated

FeatureDescription
File uploads Whether the form package supports file uploads
HTML5 fields HTML5 features, like input types, placeholders, etc..
Fieldsets Can the user organize the form using fieldsets?
Export formats In which formats can the user export submitted form data?
Custom backend handling Does the package allow to execute custom code when users are submitting data?
Custom field types Can developers register custom field types?
Captcha integration Is Captcha integration implemented?
Built-in integration with Mezzanine
Modify existing field types Is it possible to modify existing field types without modifying the package
itself?
Built-in integration with FeinCMS
Drag-n-drop Is sorting of form fields using drag-n-drop implemented?
Field type: Foreign key Is it possible to add a "foreign-key" field to the form?
Available translations The list of languages the package has been translated to.
Anti-spam Built-in anti-spam solutions?
Built-in integration with DjangoCMS
Field type: Multiple foreign keys Is it possible to add "multiple foreign-keys" field to the form?
Supported Django versions Supported Django versions
Validate initial values Is it possible to validate the initial values when building the form?
Granular permissions Can admins restrict usage of certain form elements using Django's permissions
system?
Put contents (text, images, videos) between form elements Is it possible to put content (text, images, videos) between form elements?
Built-in integration with Wagtail
Built-in MPTT support Are `django-mptt` fields supported?
Export and import forms Is it possible to export forms into certain format and import them from same
format?
Dynamic initial values Are dynamic initial values (like { request.path } or { request.user.get_username
} or supported?
Works without Django admin Is GUI fully (100%) functional without Django admin (has own management
interface implemented)?
Integer field Is integer field supported?
Form wizards Are form wizards supported?
PyPy PyPy support?
Built-in integration with Django REST framework Is integration with `Django REST framework` implemented?
Password field Is password field supported?
Demo Is there a demo available?
Select multiple field Is select multiple field supported?
API to integrate with third-party frameworks Does package provide API for integration with third-party frameworks (such as
Django REST framework)?
Boolean field Is boolean field supported?
Radio button field Is radio button field supported?
Regex field Is regex field supported?
Date field Is date field supported?
Decimal field Is decimal field supported?
DateTime field Is date time field supported?
Select field Is select field supported?
Slug field Is slug field supported?
Email field Is email field supported?
Conditional logic Is conditional logic (conditional fields, branches, etc) supported? Please, be
very specific.
Text field Is text field supported?
Textarea field Is text area field supported?
File field Is file field supported?
Duration field Is duration field supported?
Float field Is float field supported?
Time field Is time field supported?
Hidden field Is hidden field supported?
URL field Is URL field supported?
Checkbox (multiple choices) field Is checkbox (multiple choices) field supported?
IP address field Is IP address field supported?
Formsets Are formsets supported?
Null boolean field Is Null boolean field supported?
Date-based auto publishing Forms can be automatically enabled/disabled based on dates (start date, end
date).
Package Wagtail CMS django-fobi django-widgy form_designer django-form-builder django-dynamic-forms dynamic-django-forms formunculous django-wysiwyg-forms django-dynamicforms jquery-django-superformset pulpo-forms-django django-dataforms django-remote-forms django-forms-builder
Package Wagtail CMS django-fobi django-widgy form_designer django-form-builder django-dynamic-forms dynamic-django-forms formunculous django-wysiwyg-forms django-dynamicforms jquery-django-superformset pulpo-forms-django django-dataforms django-remote-forms django-forms-builder
Description A Django content management
system focused on flexibility
and user experience
Form generator/builder
application for Django done
right: customisable, modular,
user- and developer- friendly.
A CMS framework for Django
built on a heterogenous tree
editor.
A simple form designer for
Django
Dynamic forms builder for
Django Framework
django-dynamic-forms is a
reusable Django application to
create and configure forms
through the admin.
A simple, reusable Django app
that allows you to build (and
respond to) dynamic forms.
Perfect for surveys, position
applications...
This is a Django based
application for creating
database backed or email
forms. It features an
innovative drag and dro...
WYSIWYG form editor/creator
django app
Dynamically add forms to your
site through the admin
interface.
jQuery Django Dynamic Formset
Plugin
Django app for dynamic forms Dynamic, database-driven
Django forms
A platform independent django
form serializer
Let users build forms in
Django admin
CategoryFrameworkAppAppAppAppAppAppAppAppAppOtherAppAppAppApp
# Using This9263101000200105
Python 3?
Development Status Production/Stable Beta Beta Production/Stable Unknown Production/Stable Unknown Production/Stable Unknown Unknown n/a n/a Beta Planning Production/Stable
Last updated Sept. 19, 2021, 12:46 a.m. Jan. 25, 2021, 4:16 p.m. Aug. 25, 2021, 5:09 p.m. July 20, 2021, 7:03 a.m. Sept. 7, 2021, 6:18 a.m. April 13, 2019, 5:43 a.m. Jan. 5, 2021, 8:14 p.m. March 11, 2017, 8:39 p.m. Nov. 13, 2015, 11:28 a.m. Oct. 18, 2011, 10:04 a.m. June 13, 2014, 3:06 p.m. Aug. 11, 2015, 1:57 p.m. Jan. 8, 2013, 5:41 p.m. July 12, 2017, 11:49 a.m. Sept. 16, 2018, 9:48 p.m.
Version2.14.10.17.10.9.10.18.10.16.70.5.30.1.52.2.50.1.10.1.2n/an/a0.2.00.0.10.14.0
RepoGitHubGitHubGitHubGitHubGitHubGitHubGitHubGitHubGitHubGitHubGitHubGitHubGitHubGitHubGitHub
Commits
Stars1108338632747261451392415294434211636
Repo Forks234195592810352n/a10671013108262
Participantsgasman
kaedroho
thibaudcolas
jacobtoppm
BertrandBordage
timheap
zerolab
tomdyson
m1kola
davecranwell
more...
barseghyanartur
jstacoder
minusf
mariuccio
adrien-delhorme
freezed
jmsfwk
thomasWajs
MaximilianKindshofer
Heldroe
more...
gavinwahl
acatton
justinstollsteimer
jxcl
julianandrews
zmetcalf
nolsto
chroto
agroth
gradel
more...
matthiask
DrMeers
michaelkuty
jphalip
benzkji
sspross
valmynd
schuerpf
fabiangermann
indexofire
more...
francesco-filicetti
peppelinux
MarkusH
gladson
carltongibson
jedie
askvortsov1carsongeefitzgen
llonchj
firass
ebradbury
gabber7
huddlej
roalddevries
jmacul2
jgerigmeyerVeronicaMartinez
gpsteglich
elpaquete
jmacul2
douggwaite
tarequeh
easel
bsod90
david-swenson-wisertogether
vechorko
bartek
jfw
smotes
stephenmcd
bmihelac
cmheisel
metteludwig
smacker
bentimms
diegueus9
ChangeSomeCode
barsch
fabrixxm
more...
Documentation N/A N/A N/A N/A N/A N/A
File uploads
HTML5 fields
Fieldsets , but can intersperse non-form content, like HTML and images, fieldsets could be added easily
Export formatsCSVXLS, CSVCSV, email, salesforceCSVCSVCSV, XLS
Custom backend handling 
(core design philosophy)
  through the same mechanism as custom fields, you can create user-configurable SuccessHandlers that do things like send emails, submit to salesforce, etc etc 
Through django signals (model save).
Custom field types 
(core design philosophy)
  using widgets of course!
Captcha integration  using http://docs.wid.gy/en/latest/contrib/form-builder/index.html#widgy.contrib.form_builder.models.Uncaptcha
Built-in integration with Mezzanine  through the widgy.contrib.widgy_mezzanine app 
In fact, the forms builder lives as a separate sub-package in the mezzanine. It's not used as an app there, but rather shares most of the code base.
Modify existing field types  either through modifying render template, or through proxying http://docs.wid.gy/en/latest/tutorials/proxy-widget.html
Built-in integration with FeinCMS
Drag-n-drop  yes
django-widgy is all about the drag-n-drop
 
The django-forms-builder package doesn't have drag-n-drop for sorting of the form fields. The mezzanine forms builder does.
Field type: Foreign key
Available translationsEnglish (primary), German, Portuguese (Brazil), Portuguese (Portugal), Romanian, Russian, Spanish, French, Icelandic (Iceland), Italian, Finnish, Dutch (Netherlands), Galician, Polish, Greek, Slovenian, Japaneese, Dutch

English (primary), Dutch, German, RussianEnglish (primary), Brazilian Portuguese, GermanEnglish (primary), Brazilian Portuguese, Dutch, German, French, Norwegian, Polish, Russian, Spanish
Anti-spam 
CAPTCHA,
ReCAPTCHA,
Invisible reCAPTCHA and
Honeypot fields
  using the Uncaptcha methodReCaptchaCaptcha 
Honeypot field
Built-in integration with DjangoCMS 
In addition to the form widget, there's a dedicated theme for editing the forms in "djangocms-admin-style" package style.
Field type: Multiple foreign keys
Supported Django versions1.7, 1.8 and 1.9Present: 1.8, 1.9, 1.10, 1.11, 2.0, 2.1, 2.2
Past: 1.5, 1.6, 1.7
1.4 - 1.61.4, 1.5, 1.6, 1.71.4, 1.5, 1.6, 1.71.5, 1.61.4, 1.5, 1.6, 1.7, 1.8, 1.9, 1.10
Validate initial values
Granular permissions
Put contents (text, images, videos) between form elements 
Build-in support for:
Image (file upload),
Image (URL),
Plain text,
Video (embed),
Rich text (CKeditor) and
Markdown.
Built-in integration with Wagtail
Built-in MPTT support
Export and import forms 
Into JSON format, from JSON format, from MailChimp.
Dynamic initial values
Works without Django admin 
Wagtail uses its' own management interface, which does not rely on Django's admin. However, you should still have administrative privileges in order to build forms.
 
Access to the GUI is granted though permissions. Almost seamless integration with django-admin is implemented through the "simple" theme.
  though the content is all managed using a Django Form Widget, it is possible to implement it outside of the admin center, has not been done officially yet though.
Integer field
Form wizards
PyPy
Built-in integration with Django REST framework 

The following actions are available:

- LIST (list the forms)
- OPTIONS (for the given form)
- PUT (submit data to the given form)
Password field
DemoHeroku hosted demo.

Dashboard: https://django-fobi.herokuapp.com/en/fobi/
DRF endpoint: https://django-fobi.herokuapp.com/api/

Credentials:

Login: test_user
Pasword: test_user
Self hosted demo http://demo.wid.gy/create-demo-site/

After creating a demo site, go to Pages -> Contact us and check the form generator.
Form builder integrated into the Mezzanine demo http://mezzanine.jupo.org/en/admin/

After logging in go to Pages -> Add : Form, and test the forms builder.
Select multiple field
API to integrate with third-party frameworks 

Through `Integration` plugins.
Boolean field
Radio button field
Regex field
Date field
Decimal field
DateTime field
Select field
Slug field
Email field
Conditional logic
Text field
Textarea field
File field
Duration field
Float field
Time field
Hidden field
URL field
Checkbox (multiple choices) field
IP address field
Formsets
Null boolean field
Date-based auto publishing
Search WeightPackageDescriptionLast PyPI release:Repo ForksStars
{{ item.weight / max_weight * 100 | number:0 }}%{{ item.title }}Grid: {{ item.description }} {{ item.last_released | date: 'mediumDate' }} N/A {{ item.repo_forks }} N/A {{ item.repo_watchers }} N/A