WCAG guide for no-code creators on all other criteria except colors
This is the guide for no‑code creators and administrators who create or customize pages in the Freedom UI Page Designer, and need every page to pass the WCAG 2.2 level AA checks.
Some advice is given for low-code development as well.
It's a part of the WCAG user guides. This is a preliminary version to get more feedback about it and later publish it on the Creatio Academy.
Contents:
- Inputs, forms & validation
- Element size & appearance
- Text alternatives & non‑text content
- Page structure
- Localization, links & status messages
- Quick checklist
Inputs, forms & validation
Need | What to do in Freedom UI | Do (✅) and don’t do(❌) |
---|---|---|
Provide a useful element name | Usually, in the Freedom UI page designer, the title is at the top of each element's properties panel. If it’s present, fill it with meaningful value. Even if the title is hidden visually, it will help assistive technologies work correctly. | ❌ An icon-only button to add a new contact has a title “Button 1” and a "+" icon. ✅ Title “Add contact”. |
Input suggestions, error identification and prevention When errors occur during user input, they must be clearly identified. Suggestions for correction or prevention should be provided | Showing appropriate hints, suggestions (labels or tooltips) if a field's purpose isn't immediately obvious, and errors where it's needed to help users while inputting information. In serious cases, there must be a way for additional confirmation or the ability to revert the operation. For critical processes, add a process step that asks for confirmation or offers Undo. | ✅ Mark all fields as required in the place of entry instead of later steps in the process where it has to be used. Business rules could also be used for that. ✅ Add tooltip “Please write colors on the product. You can input several colors, please try to be specific.” to the text input for the desired product colors in the order record. ✅ Add an extra process step “Confirm order” for the user to review the order information before submitting it. |
Provide texts that understandable for more people | Formulate label content and other text messages without relying only on shape, colour, or screen position | ❌ Label: "To go to the next page, press the button to the right." (relies solely on visual location). ✅ Label: "To proceed, click the 'Next' button." (uses a specific name) |
Avoid redundant entry Users should not be required to enter the same information multiple times within the same session, unless it's essential for security or the previously entered information is no longer valid. |
| ❌ Asking users to fill in already known address every time when creating an order. ✅ Fill those fields instead of asking the user to re-enter them. |
For deeper reading, see full WCAG documentation on related success criteria (SC), or other resources:
SC 4.1.2. Name, Role, Value – Understanding Success Criterion 4.1.2: Name, Role, Value | WAI | W3C
SC 3.3.1. Error Identification – Understanding Success Criterion 3.3.1: Error Identification | WAI | W3C
SC 3.3.2. Labels or Instructions – Understanding Success Criterion 3.3.2: Labels or Instructions | WAI | W3C
SC 3.3.3. Error Suggestion – Understanding Success Criterion 3.3.3: Error Suggestion | WAI | W3C
SC 3.3.4. Error Prevention (Legal, Financial, Data) – Understanding Success Criterion 3.3.4: Error Prevention (Legal, Financial, Data) | WAI | W3C
SC 1.3.3. Sensory Characteristics – Understanding Success Criterion 1.3.3: Sensory Characteristics | WAI | W3C
SC 3.3.7. Redundant Entry – Understanding Success Criterion 3.3.7: Redundant Entry | WAI | W3C
Element size & appearance
Need | What to do in Freedom UI | Do (✅) and don’t do(❌) |
---|---|---|
Consistent identification Components that perform the same function across different pages must be identified consistently | Re‑use the same icon, label text, tooltip, and position for identical functions. | ❌ A button that "saves" data is labeled "Save" on one page, "Submit" on another, and "Update" on a third, even though they all perform the exact same saving action. ✅ All buttons that save data are consistently labeled "Save" and use the same visual style. ✅ Similarly, a field for "Customer Name" should always be labeled "Customer Name" across all relevant pages. |
Provide a relevant minimum target size (24 × 24 px or more) | Some Creatio elements are smaller than 24px in height or width. For example, buttons of the “S” size. You have to leave a space (e.g., container gap and spacing settings) for the elements near them to effectively increase button target area. Also, it’s always good to have a pace between independent buttons. | ❌ Column with two “S”‑buttons flush together ✅ Buttons have at least a small gap between them (8px or more). |
For deeper reading, see full WCAG documentation on related success criteria (SC), or other resources:
SC 3.2.4. Consistent Identification – Understanding Success Criterion 3.2.4: Consistent Identification | WAI | W3C
SC 2.5.8. Target Size (Minimum) – Understanding Success Criterion 2.5.8: Target Size (Minimum) | WAI | W3C
Text alternatives & non‑text content
Need | What to do in Freedom UI | Do (✅) and don’t do(❌) |
---|---|---|
Non-text content, such as images, must have text alternatives so that users who cannot see them (e.g., screen reader users) can still understand their purpose and meaning. This also applies to "images of text," where text is embedded within an image, making it inaccessible.
| If possible, avoid images of text. Use a Label component instead; you can style it visually. It allows you to avoid worrying about alt texts and the ability to translate the text to multiple languages directly within the Freedom UI no-code designer. | ❌ Inserting a PNG that says “Contact Us”. ✅ Label component reading “Contact us”. |
Provide alt text for every Image component on the page. The You can set the "alt" attribute in the Image element properties in the page metadata. See more at ImageInput component | Creatio Academy | ❌ Leaving both fields blank → screen‑reader just says “graphic” ✅ “Company logo: Creatio” | |
Avoid flashing media | If you embed a GIF/video, preview it: no element may flash > 3× per second. This includes content that flashes quickly between light and dark, or between different colors, including strobes. When in doubt, use a static frame or slower transition. | ❌Embedding a GIF animation that rapidly flashes between bright colors with the text on the gif “Waning” to draw attention. ✅ Use a static label “Warning” with a specific styling (size, color) |
For deeper reading, see full WCAG documentation on related success criteria (SC), or other resources:
SC 1.1.1. Non-text Content – Understanding Success Criterion 1.1.1: Non-text Content | WAI | W3C
SC 1.4.5. Images of Text – Understanding Success Criterion 1.4.5: Images of Text | WAI | W3C
SC 2.3.1. Three Flashes or Below Threshold – Understanding Success Criterion 2.3.1: Three Flashes or Below Threshold | WAI | W3C
Page structure
Need | What to do in Freedom UI | Do (✅) and don’t do(❌) |
---|---|---|
Every page should have a clear and descriptive title | Keep the default In Creatio, by default, the Also, in the record pages, it’s automatically populated by the record primary display value to clearly indicate which record is opened. | ❌ Deleting the PageTitle label from the page ✅ If needed, changing the label text, moving this element to another position, or changing style |
Consistent navigation Navigational mechanisms and interactive components that are repeated across multiple pages should appear and function consistently. This helps users learn and predict how to interact with your application. | Out of the box, Creatio provides a strict and useful navigation pattern utilizing the general page layout, navigation panel, and page structure. If you want to make a custom page layout or other navigation options, you have to make sure that it works for your users, and, possibly, you should organize such navigation patterns on your other pages as well to keep things consistent, when it's possible and needed. | ❌ A "Next Step" button that is sometimes on the left, sometimes on the right, or changes its label to "Proceed" on different pages for the same function. ✅ A consistent set of process navigation buttons (e.g., "Previous," "Next," "Save") always appearing at the bottom right of the page with identical labels and icons. |
Consistent help | If you add inline help, put it in the same region (e.g., right panel) across all pages. | ❌ A help icon for a specific section appears at the top right of the section on one page, but at the bottom left on another, even for similar types of sections. ✅ Help texts are placed in the same places for the same page layouts, e.g. right panel. All help icons or links for form fields are consistently placed immediately to the right of the field label |
Heading hierarchy conveys structure | Use the label component Heading levels H1 → H2 → H3 … top‑to‑bottom inside each page, including modal pages. This structure works best in simple-structured pages. As page complexity rises with lots of tabs, separate containers, collapsible expansion panels, page customizations in different Creatio packages, etc., it becomes difficult to keep track of heading levels. Use H2, H3, and other lower-level header structures only if you really need this structure. | ❌ A page where a small, visually minor text element is set as ✅ Linear levels, one H1 per page or modal. |
Provide a skip link/bypass repeated blocks | Creatio's Freedom UI shell layout inherently provides mechanisms (like skip links, though not always visibly exposed) to bypass repetitive content. | ✅ It's safer not to alter the general structure of the Shell layout (BaseShell, MainShell schemas in Configuration) to avoid issues. ✅ Focus your customizations within the main page content area inside Freedom UI shell. |
For deeper reading, see full WCAG documentation on related success criteria (SC), or other resources:
SC 1.3.1. Info and Relationships – Understanding Success Criterion 1.3.1: Info and Relationships | WAI | W3C
SC 2.4.1. Bypass Blocks – Understanding Success Criterion 2.4.1: Bypass Blocks | WAI | W3C
SC 2.4.2. Page Titled – Understanding Success Criterion 2.4.2: Page Titled | WAI | W3C
SC 3.2.3. Consistent Navigation – Understanding Success Criterion 3.2.3: Consistent Navigation | WAI | W3C
SC 3.2.6. Consistent Help – Understanding Success Criterion 3.2.6: Consistent Help | WAI | W3C
Localization, links & status messages
Need | What to do in Freedom UI | Do (✅) and don’t do(❌) |
---|---|---|
Make all page content localized to the language of the user | Ensure all page elements (Input titles, labels, button texts, etc.) are translated into all languages enabled in Creatio. | ❌ Mixing untranslated field captions. ✅ The user with the Spanish language selected sees all page elements are consistently in Spanish. |
Provide descriptive names or context for all links | This rule sets some limitations on how to write link text and surrounding content. If you are composing a complex text label with links, please read the criteria official page and examples: Understanding Success Criterion 2.4.4: Link Purpose (In Context) | WAI | W3C | ❌ A standalone (without surrounding text in the same paragraph) link “Click here” ✅ Link says “View pricing table”. |
Provide useful status messages where it's needed | Creatio provides several ways to display, if necessary, additional status messages. For example, they can be configured for the Save data action. Creatio's built-in notifications and validation message mechanisms adhere to this. | ✅ If needed, provide an additional success message to the “Save” action |
For deeper reading, see full WCAG documentation on related success criteria (SC), or other resources:
SC 3.1.1. Language of Page – Understanding Success Criterion 3.1.1: Language of Page | WAI | W3C
SC 3.1.2. Language of Parts – Understanding Success Criterion 3.1.2: Language of Parts | WAI | W3C
SC 2.4.4. Link Purpose (In Context) – Understanding Success Criterion 2.4.4: Link Purpose (In Context) | WAI | W3C
SC 4.1.3. Status Messages – Understanding Success Criterion 4.1.3: Status Messages | WAI | W3C
Quick checklist
In total, the gist of it is the following:
All applicable elements: set the meaningful title.
Consistency: use unified page structure, meaningful texts, icons, keep order.
Headings: keep
PageTitle
element, one H1, logical order.Buttons: ≥ 24 px size or add spacing.
Suggestions/Validations: specific labels and tooltips, mark required fields, no duplicate inputs.
Language: translate all elements to all enabled languages.
Images (not record inputs): provide alt text.
Media: no frequent flashing.