Forms

An interactive part of the interface that allows users to enter, edit, or configure information and save it in the system.

Types of Forms

Simple

Simple forms are short groupings of related inputs. Use a simple form when you only need to answer one question. For example, an address form has multiple related inputs, but they are all part of the answer to the question “What is the user’s address?”

Simple forms in Mews include information like, new customer, address, name, phone number, nationality, etc.

Usage / Variant / Simple

Sectioned

Sectioned forms are grouped into chunks, each with a clear section heading, to help the user quickly scan the form and see what is being asked.

A sectioned form is good when you need to ask multiple questions. For example, when inviting a new user to the system, there are sections for User details and for Roles and permissions.

A sectioned form is offered in a single screen and should have a single call to action. If you need more sections than comfortably fit on a single screen, you should consider a multi-step form.

Usage / Variant / Sectioned

Multi-step

A multi-step form distributes input fields across multiple screens, with a progress indication to show how the user is advancing through the form. Each screen should have a coherent group of fields, with a linear connection between the sections.

Multi-step forms can save progress throughout the process and allow users to revisit prior steps to review their submissions.  
Because users cannot easily scan ahead, provide instructions in advance for any documents the user may need to have at hand, if the forms are collecting personal data or there are legal requirements that need to be met. Multi-step forms contain a form title, and clear section titles, with a Progress indicator.

For example, when checking in online, guests will need to have their passport nearby. During KYC processes, Mews customers need to have legal identification ready to scan. 

Usage / Variant / Multistep

Best practices

When to use

  • User registration and login: For those cases we have the users create an account or authenticate themselves. Registration forms collect information like usernames, passwords, and email addresses, while login forms verify user credentials.
  • Surveys and feedback: In case we have to collect user opinions, feedback, and survey responses.
  • Contact and support requests: Contact forms allow users to reach out for support, ask questions, or provide feedback.
  • Booking and reservations: Forms enable users to book services. These forms will collect details needed to confirm bookings and manage reservations.
  • Profile Updates: Forms allow users to update their personal information, preferences, and settings within their accounts.

When not to use

  • Read-only: Do not add a form with read-only info in the text field. Instead, use a Simple list
  • Limited user context: If the Form is not relevant to the user’s current context or task, it can disrupt the user experience. Make sure that Forms are contextually appropriate and placed where users expect them.

Do’s and Don’ts

Clear information hierarchy: To ensure user-friendly Forms, establish a clear information hierarchy, use appropriate sectioning, maintain consistent headers and follow the spacing guides for better comprehension of information clusters.

Usage / Best practise / Hierarchy / Do
Usage / Best practise / Hierarchy / Don't

Implement progressive disclosure: Reveal supplementary content triggered by the user's preceding choice. This show/hide method means users can concentrate on pertinent data and keeps workflows concise. 

Usage / Best practise / Progressive Disclosure / Do
Usage / Best practise / Progressive Disclosure / Don't

Minimise info icon use when possible: Because Tooltips are only visible when hovering over the info icon, they are not as user friendly or accessible as helper text. Minimise the use of these where possible. The info icon and Tooltip should only be employed in extremely rare situations to avoid cluttering the user interface.
Whenever you are thinking of adding a tooltip, consider whether you can redesign the inputs to avoid the need for a tooltip, or whether a different kind of text element could be used instead (e.g. section description, helper text, placeholder, etc.)

Do / Hint
Don't / Icon

Avoid multi-step forms for settings: Because it is important to see all the settings/controls that will be applied in one place, these kinds of forms may require scrolling. Multi-step forms make it harder to go back to previous sections and change the settings, so these forms tend to scroll.
This makes it important to chunk the information into sections, to make it easier to scan. Use section headings to describe what each chunk of information controls.

Do / Hint
Don't / Icon

Building Blocks

Actions  

Type

Info

Button Hierarchy

Buttons are sorted by importance from right to left, with the most important Button (primary) on the right.  

Do not top-align Buttons  

A top-pinned Button is awkward placed when the user has finished the form and is ready to submit. If we feel it’s necessary to pursue pinned actions in the future, we should look into a pinned footer or tray to contain Button groups.  

Disabled Buttons

Never disable a submit Button, even if all of the required fields aren't filled in. Instead, describe what needs to be done using validation and error messages. 

Feedback  

Type

Info

Server-side validation

Alert come into play when server-side errors are involved, i.e. the user tries to submit a form in its entirety and the page is reloaded with the detected errors.  

In these situations, use an alert as well as inline error messaging wherever possible to help users make the fix. Inline error messages should disappear when the form criteria are met.  

Position the Alert at the top of the form, as when you submit the data and refresh the page, the focus will be on the top of the form.  

Successful validation form

When the form has been successfully submitted, a temporary Alert message will inform the user of successful processing. If possible, avoid using the word “successfully”, and indicate the success state via the wording. 

Help information

Use the Banner component to provide general help relevant to the form process.