An extension that can be used with Semantic MediaWikiExtension:Semantic MediaWiki or CargoExtension:Cargo (or by itself), that allows users to create forms for creating and editing pages that use infobox-style templates. Forms are defined within wiki pages, written in a custom markup language, and are parsed on-the-fly when a form is displayed.

Page Forms (known until November 2016 as Semantic Forms) is an extension to MediaWiki that allows users to add, edit and query data using forms.
It was originally created as an offshoot of the Semantic MediaWikiExtension:Semantic MediaWiki extension, to be able to edit templates that store their parameters via SMW, which is why it was originally called "Semantic Forms". However, it can now also work with the alternative CargoExtension:Cargo extension, or with neither extension installed.

Very simply, Page Forms allows you to have forms for creating and editing pages on your wiki, as well as for querying data, all without any programming.
Forms can be created and edited not just by administrators, but by users themselves.

The main components of Page Forms functionality are form definition pages, which exist in a separate namespace, 'Form:'.
These are pages consisting of markup code which gets parsed when a user goes to a form.
Since forms are defined strictly through these definition pages, users can themselves create and edit forms, without the need for any actual programming.

The Page Forms extension is mostly used to add and edit calls to infobox-style templates within pages.
A form allows a user to populate a pre-defined set of templates, as well as page sections, for any page; if Cargo or Semantic MediaWiki are used, the data within the templates can then be stored and queried.

Forms can also be used to edit the data in an existing page, and you can enable an "⧼formedit⧽" tab to show up on any page.

Page Forms also supports autocompletion of fields, so users can easily see what the previously-entered values were for a given field. This greatly helps to avoid issues of naming ambiguity, spelling, etc.

Data in a page that doesn't fit into the form, like a free-form text description of the page's subject, isn't ignored when the page is edited with a form; rather, it is placed into a separate input box called "free text".

Page Forms also includes a wide variety of other functionality related to forms.

This is the first of the two major sections. How to define a form via a page within the "Form:" namespace. Covers the entire form-definition syntax, including the {{{info}}}, {{{for template}}}, {{{end template}}}, {{{field}}}, {{{section}}} and {{{standard input}}} tags. Also covers how to add tabs and tooltips.

The second major section. A listing of all allowed input types, as well as parameters for each, and the set of SMW and Cargo data types that each can be used with. Also includes complete information on autocompletion options.

How to bring users to forms, via the #forminput, #formlink, #formredlink and #queryformlink functions. Also, how to use #formredlink to have red-linked pages created automatically. Also, how to create links that directly modify a page, via the #autoedit function.