Standard scope
This standard applies to:
- pennmedicine.org
- All Penn Medicine websites
- Penn Medicine mobile applications
- All Penn Medicine digital products
Overview
Forms are typically used to:
- Gather user contact information: Queries users for contact information and other data for subsequent follow up action.
- Support task completion: Prompts user through a logical progression to provide the necessary information to complete and submit the form.
- Provide feedback: A confirmation allows the user to validate the information submitted and may include guidance for next steps.
Use cases
The following table provides a summary of use cases for forms. Visual examples of each form type are also provided.
Note that in most cases, the form will follow a hero with heading, subheading and other text to introduce the form, provide guidance or confirm submission with a thank you message.
Design System components
Super Form
Form-Content
Form-Footer
Form-Stepper
Form-Content
Form-Footer
Single step form
The single step form can include the following elements:
- Text field
- Date field
- Phone number field
- Text area
- Radio buttons
- Checkboxes
- Dropdown
- Submit Button
- Footer Link
- Confirmation

The single step form confirmation appears when the user submits the form. The form updates to show what was submitted as a confirmation, with the footer link now guiding the user to a next step of their digital journey.

Multi-step form
The multi-step form can include the following elements:
- Step indicator with labels
- Text field
- Date field
- Phone number field
- Textarea
- Radio buttons
- Checkboxes
- Dropdown
- Submit Button
- Footer Link
- Review page
- Confirmation page



The multi-step form confirmation appears once the user completes all the steps and clicks to continue to review, the form updates to show what was submitted for the user to validate and includes the ability to edit original inputs.

When the user submits the form, the page updates to show what was submitted as a confirmation, with the footer link now guiding the user to a next step.

Behavior
Interactive
Interactive form elements help guide users through the form and confirm their input.
- Input fields highlight on focus to indicate where users are typing.
- Radio buttons show selected state clearly when an option is chosen.
- Buttons change appearance on hover and click to show they’re active.
Non Interactive
Non-interactive form elements display information without allowing changes.
- Review page: all fields are read-only but editable via “Edit” buttons
- Confirmation page: is non-interactive and serves as a record of submission
Error States
Error states help users understand when something has gone wrong and how to fix it.
- Field-level errors:
When a user enters invalid or incomplete information, the input field will: - Display a red border
- Show an error icon
- Include a helpful message below the field (e.g., “This value is invalid” or “This date is invalid”)
- Page-level errors (submission failure):
When the form cannot be submitted due to a technical issue, a global message displays below the primary action button. - Example: “Something went wrong. Please try again later.”
- This message persists until the user attempts to resubmit.

Customizable elements
Forms offer a flexible structure, allowing for customization of content. Below are the key components of the design.
Write clear, descriptive labels and mark all required fields with an asterisk (*).
Placeholder text should suggest input.
Write clear, descriptive labels and mark all required fields with an asterisk (*).
Multi-step forms will also include the following elements:
Current step: Highlighted in primary blue
Upcoming steps: Shown in secondary blue
Edit buttons should be next to each step of the form title.
Guidelines (do’s and don’ts)
Do
- Use clear, plain-language labels.
- Indicate required fields with an asterisk (*).
- Show validation errors inline and contextually.
- Break long forms into steps, if needed.
- Minimize required input and avoid overwhelming the user.
- Use mobile-friendly input patterns (e.g., numeric keypad for phone fields).
- Provide a final confirmation.
Don't
- Rely on placeholder text instead of labels.
- Allow form submission with incomplete or invalid data.
- Surprise users with hidden requirements or multiple mandatory steps without warning.
Related resources
For designers: Visit the Designers section for access to component specs and Figma files.
For developers: Visit the Developers section for implementation details and to access the front-end code library in Storybook.
Contact
For more information about this standard, email: web-standards@pennmedicine.upenn.edu