Skip to main content

Building and editing

Learn how to start building your first form.

Your form’s name and URL
The start page
Required pages
Adding pages
Deleting pages
Choosing the type of page
Choosing which question format to use
Asking users to submit a file
Making a question optional
Formatting content with markdown

Your form’s name and URL

When you create a new form, you need to give it a name.

This name is:

  • what your form will be listed as in the MoJ Forms editor
  • the title that will appear on your form to users
  • used in your form’s URL - for example, a name of Apply for a dog licence will produce a form URL of https://apply-for-a-dog-licence.form.service.gov.uk

You can change the name of your form later in the settings.

Back to top

The start page

When you create a new form, you are given a default start page. This will be your form’s home page.

All forms built using MoJ Forms must have a start page. To find out more about what should go on your start page, read the Design System guidance.

Back to top

Required pages

For your form to successfully submit the user data it collects, it must have:

  • a check answers page - this should come after any question pages
  • a confirmation page - this should come immediately after the check answers page

Back to top

Adding pages

You can add pages to your form in 2 ways:

  • at the end of your form flow, using the ‘add page’ button
  • after any existing page in your form flow, by hovering over the page thumbnail to reveal the menu (3 dots in a circle) and selecting ‘add page here’
There are 2 ways to add a page to a form: after an existing page using the page menu and at the end of the form using the add page button.

When you add a new page, you need to give it a name. This will be the page’s URL slug so should be in lower case with no spaces or special characters. Separate words with hyphens. For example, in the following URL, the page name is ‘your-details’:

https://apply-for-a-dog-licence.form.service.gov.uk/your-details

Some names are reserved for global pages and should not be used:

  • metrics
  • ping
  • health
  • accessibility
  • cookies
  • privacy
  • maintenance
  • reserved
  • dashboard
  • admin

It is not currently possible to change the name of a page once you have created it.

Back to top

Deleting pages

You can delete a page from the form flow view by hovering over the page thumbnail to reveal the menu (3 dots in a circle) and selecting ‘delete page’. This cannot be undone.

Back to top

Choosing the type of page

When adding pages, you can choose from the following templates:

  • Single question page - as the name suggests, this template allows one question per page. You can choose from several question types:
    • text
    • text area
    • number
    • date
    • radio buttons
    • checkboxes
    • file upload
  • Multiple question page - this template allows you to add several question components to a single page. You can use any of the question types available on a single question page except file upload.
  • Check answers page - use this page to let users check the information they have provided. If your form requires users to submit any information, it will need a check answers page.
  • Confirmation page - use this page after a check answers page to let users know they have completed their task.
  • Content page - use this page to provide users with information, such as advice about the application process or the task they are trying to accomplish. You can format content using markdown - a simple way of indicating things like headings, links and tables using text symbols.

Back to top

Choosing which question format to use

You can use the following question types on single and multiple question pages:

The file upload question type can be used on a single question page only.

We will be adding more question types as well as including options for validation and formatting in future updates.

Back to top

Asking users to submit a file

The file upload question type allows you to ask users to attach a file to their form. It supports the following file formats up to 7MB in size:

  • portable document format (.pdf)
  • comma-separated values (.csv)
  • images (.jpg, .jpeg, .png)
  • MS Excel (.xls, xlsx)
  • MS Word (.doc, .docx)
  • Open Office (.odt, .ods)
  • plain text (.txt)
  • rich text (.rtf)

The component allows users to upload only one file per page. To collect additional files, you will need to add extra file upload pages.

Back to top

Making a question optional

All questions are required by default but you can switch this setting off to make a question optional. This can be done with both single question pages and individual questions on multi-question pages.

To make a question optional, first click in the question title as if you are going to edit it. This highlights the component settings menu (3 dots in a circle). Clicking on the menu will open it.

The option to make a question optional is in the component settings menu.

For now, there is only one setting, called ‘Required’. Click on this setting to open the options, where you can set it to either ‘yes’ (required) or ‘no’.

MoJ Forms automatically adds ‘(optional)’ onto the end of the title of any question that isn’t required.

Back to top

Formatting content with markdown

In most cases, you won’t have to worry about formatting. The page templates include fields for headings, labels and hint text and all you have to do is add your own words.

Content areas allow you to use markdown to add your own formatting. These are on every content page and can be added to some other page templates as required.

Markdown is a way of adding formatting to plain text using basic symbols and patterns. With markdown, you can add headings, links, lists, tables and more. For example, to create a bulleted list, you start each item with an asterisk (*). Here is a selection of the most common markdown elements:

Formatting Markdown Example
Headings Put 2, 3 or 4 hashtags at the beginning of your header, depending on the level of heading you need. ## Level 2 heading
### Level 3 heading
#### Level 4 heading
Bold Put the words you want to make bold inside double asterisks. make **these words** bold
Italic Put the words you want in italics inside single asterisks. make *these words* italic
Bullets Put an asterisk (or a hyphen) at the start of each item in your list and leave blank lines at the beginning and end of the list. Bulleted lists look like this:
* list item 1
* list item 2
* list item 3
Numbering Put a number with a full stop and space at the start of each item and leave blank lines at the beginning and end of the list. Numbered lists look like this:
1. list item 1
2. list item 2
3. list item 3
Web links Put the link text in square brackets followed immediately by the link url in round brackets. [link to GOV.UK](https://www.gov.uk/)
Email links Put ‘less than’ and ‘greater than’ signs around the email address. <email@address.com>
Tables Use dividers (or ‘pipes’) to split your content into columns and start each row on a new line. Make sure each row has the same number of columns. Put hyphens in the second row to make the first row a header row. Leave blank lines at the beginning and end of the table.
(Tables do not currently display in the correct GOV.UK style.)
2 columns:
| Header 1 | Header 2 |
| -------- | -------- |
| Cell | Cell |
| Cell | Cell |
3 columns:
| Header 1 | Header 2 | Header 3 |
| -------- | -------- | -------- |
| Cell | Cell | Cell |
| Cell | Cell | Cell |

For the full range of markdown options available, see this markdown guide.

Back to top