Supporting Islands Theme
Follow these guidelines to convert an existing custom theme to an Islands theme.
Defining the Parent Theme
We recommend creating Islands custom themes based on the default Islands themes. To do that, define the parent theme at the beginning of the *.theme.json file. An example for a dark custom theme:
For a light theme, inherit from 'Islands Light'.
Here is the Dark Purple theme without and with inheritance from 'Islands Dark':


Hiding Sidebar Borders
In the Islands theme, there are no borders for the sidebars around the main window: the main toolbar, tool window stripes, and the status bar.
To hide the borders, set the following keys to a 100% transparent value:
00 at the end of a hex value sets a 100% transparent color.
The Dark Purple theme with transparent borders for sidebars:

Main Background Colors
The main colors to change for the Islands theme are backgrounds of tool windows and the main window.

Key | Recommendation |
|---|---|
| Use the same color as in the editor background, or a slightly lighter/darker color. |
| Dark theme: use a lighter color than the editor and tool windows background. |
The Dark Purple theme with tool window and main window backgrounds set:

Islands Border Color
By design, island areas do not have a noticeable border color. Set Island.borderColor to the same color as in ToolWindow.background.
The Dark Purple theme without visible borders for island areas:

Selected Tab Colors
The Islands theme has a new design for the selected tab:

Use the following keys to define selected tab colors. The keys are applied to all tabs, not only the editor tabs.
Property | State: Key | Description |
|---|---|---|
Border | Selected: | An existing color key. Previously, it was used for the bright tab underline. Leave the color value as is, or adjust if it appears too bright. |
Background | Selected: | A new color key for the background under the tab label. Provide a color that has enough contrast with the label. |
The background of the editor tab bar is defined with the EditorTabs.background key and should have the same color as the editor.
The Dark Purple theme with editor tabs background and tab colors defined:

All Islands Keys
Below are all keys for the island areas. If parentTheme is set to Islands Dark or Light, the default values are inherited. The only exception is Island.borderColor which should be set manually.
Key | Default value | Description |
|---|---|---|
| 1 | Defines the theme as the Islands theme. |
| 20 | Border radius of the islands. The value is 2x, the actual radius in the UI is 10 px. |
| 5 | The distance between islands. The actual distance appearing in the UI is 1 px less. |
| Theme color | Supply the chosen value. It is recommended to use the same color as for |
| 0.44 | When the main IDE window is not in focus, to show the inactive state, all content "beneath" the islands is covered with an overlay with this transparency value. |