This page describes basic rules of writing articles for IntelliJ Platform UI Guidelines.
The article structure can vary depending on whether a component or a principle is described. Most of the articles should include the structural elements listed below.
<tldr></tldr>
element.
You can add other useful links to this block if needed.
In the first paragraph, describe a component or a principle and provide an illustration.
Add this section if a component consists of several controls. Provide an image that shows all parts of the component. Use callouts to label the component parts:
Describe common use cases for the component and provide an image for each use case.
If the component is often misused, describe these cases. If possible, write which components should be used instead and provide images.
Provide guidelines on how to use a component, for example:
Try to put each rule or a group of rules into a separate subchapter and add a short and descriptive title. This will allow the reader to scan the information on the page faster and copy the link to the rule if needed.
Do not describe the component appearance in a separate section. All the details are provided in the Int UI Kit library in Figma. Make sure that an actual link to Figma is added in the useful links.
Get the Int UI kit and enable it in Figma.
_dark
postfix
to the filename.
Use a gray rounded background for all images. Find details in the Figma file.
All images must be either 706 px or 378 px wide.
Use 706 px width for images with wide content or for single images that are surrounded by text:
If an image description appears above the image, end it with a colon.
Use 378 px width for images in borderless tables. Use the border="false"
attribute for
creating borderless tables.
Put images into borderless tables when listing a set of smaller images with descriptions on the right or when adding correct/incorrect/acceptable examples.
Sets of smaller images:
![]() |
Use a split button instead if there are more than two related actions. |
![]() |
Use a built-in button instead if it's related to an input field, combo box, search field. |
Correct/incorrect/acceptable examples:
|
|
![]() |
![]() |
|
|
![]() |
![]() |
Add callouts to describe the anatomy of complex components.
All texts on images should be horizontally oriented. Refer to the Figma file for details.
The guidelines should be short, clear, and consistent. Find the common rules below.
Prefer present tense. | A progress bar
|
Prefer the active voice. | Progress bar
Progress bar |
Avoid unnecessary modal verbs. | Label
|
Use imperatives. |
|
When describing user behavior, write 'a user + verb'. | A
|
Avoid bracketed text. If information is important, put it out of the brackets or add a new sentence. Otherwise, remove it. | Provide a header
Provide a |
Omit common introductory phrases.
Write one idea per sentence.
Split the text to subsections and short paragraphs.
Use bulleted lists when the order of points does not matter, and numbered list when it does.
When giving a recommendation, explain why it is useful:
|
|
If a process is started by a user, provide a notification when the process finishes. |
If a process is started by a user, provide a notification.
|
|
|
Find more details here. |
section. |
Use tips <tip></tip>
to add links to additional materials, sources, useful
facts, and examples:
Use notes <note></note>
to highlight important information like
exceptions, limitations, or known issues:
Use the following labels in tables and paragraphs:
|
|
|
|
|
|
|
|
Avoid using would . |
Displaying indicator
Displaying indicator |
Omit then if possible. |
If a process is started by the user,
|
Replace he or she with they . |
If a process lasts less than one second, the user won’t be able to read the process name and
showing it would distract
|
Format names of UI elements with <control></control> . |
Apply the same rule for the
|
Format quotes with <code></code> . |
Do not use now in button labels. |
<shortcut></shortcut> . |
Press
|
Provide code snippets along the article to help developers implement the described look and behavior.
If a code snippet is too big, put it at the end of the article and provide a link.
To insert a snippet, use <code-block></code-block>
. Read more in Writerside documentation.