PageSync logo.png

FlexForm is an enhanced HTML5 Form rendering engine.

It renders HTML5 form elements and allows editing or creating one or more pages with one form.

When you are familiar with creating HTML5 forms you will have no problem using FlexForm.

To get started for the first time, have a look at the get started documentation.


FlexForm is a complete rewrite from the previous WSForm.

Why FlexForm

Currently there are several MediaWiki extensions that help you create Forms for your website.

What makes FlexForm different from the other extensions, is that it is really flexible. You can create a simple form (or a complex one) on any page and in any namespace.

You do not have to use any special page to setup a form or to render it.

It is also not bound to any kind of styling. This means that a simple form will not look very nice by default, but adding some css styling classes to the form gives you all the freedom in styling the form to any and all your needs. For those who are a bit less stylish, FlexForm will be supporting MediaWiki OOUI styling in the future by means of Themes.

FlexForm has Themes support.


FlexForm is very powerful.

One singe form can:

  • create a page in the Wiki
  • create several pages in the Wiki
  • can edit a page in the Wiki
  • can edit several pages in the Wiki
  • can edit Multi Revision Content slots
  • can send an email
  • can upload a file
  • can upload multiple files

Or do a combination of all of the above.

There are also Show on Select options, Multiple instances options and submit a form through Ajax (so the user stays on the page without any reload).

If you still want more features, check the documentation on the right.

How is it different from PageForms?

Some of the main difference are:

  • PageForms will render forms through its Special page. The only exception is the autoedit parser function that will allow to edit a parameter in a template on a page using Ajax.
  • PageForms renders an edit button on a page. With it you can edit Template parameters on a page.
  • FlexForm can render a form on any page or render several forms on page. It allows for editing multiple Template parameters on a page or different pages.
  • FlexForm will not read the content and template of a page and render an edit form. It does allow for you to create a very simple form that gives you all the freedom to show only relevant information to be edited.
  • FlexForm is designed to handle multiple tasks with one form. Create or edit page(s), send an email, upload one or multiple files or a combination.
  • FlexForm can be combined with the Chameleon skin and Bootstrap (or with custom js/css) to render forms in a popup, tab or collapsible element to create a more user-friendly experience where editing is part of the same page where you are also displaying information.

ws-page-props