# Theme Basics [![JetBrains IntelliJ Platform SDK Docs](https://jb.gg/badges/docs.svg)][docs] *Reference: [Creating Custom Themes in IntelliJ SDK Docs][docs:themes]* ## Quickstart Custom themes are available beginning in version 2019.1. Creating a custom theme is a process of choosing a base IDE Theme (Light or Darcula) then changing aspects of the base Theme definition. Custom themes can: - substitute icons, - change the colors of icons and UI controls, - alter the borders and insets of UI controls, - provide custom editor schemes, - add background images. ## Structure Theme Basics plugin depends on the [IntelliJ Platform SDK][docs] and [DevKit][docs:devkit] as a build system. The main plugin definition file is stored in the [plugin.xml][file:plugin.xml] file, which is created according to the [Plugin Configuration File documentation][docs:plugin.xml]. It describes definitions of the actions, extensions, or listeners provided by the plugin. ### Extension Points | Name | Implementation | Extension Point Class | |------------------------------|---------------------------------------------------------|-----------------------| | `com.intellij.themeProvider` | [theme_basics.theme.json][file:theme_basics.theme.json] | | *Reference: [Plugin Extension Points in IntelliJ SDK Docs][docs:ep]* [docs]: https://plugins.jetbrains.com/docs/intellij/ [docs:themes]: https://plugins.jetbrains.com/docs/intellij/themes-getting-started.html [docs:ep]: https://plugins.jetbrains.com/docs/intellij/plugin-extensions.html [docs:devkit]: https://plugins.jetbrains.com/docs/intellij/developing-themes.html [docs:plugin.xml]: https://plugins.jetbrains.com/docs/intellij/plugin-configuration-file.html [file:plugin.xml]: ./resources/META-INF/plugin.xml [file:theme_basics.theme.json]: ./resources/theme_basics.theme.json ## Troubleshooting To run the `theme_basics` plugin make sure that module SDK is correctly set up and points to IntelliJ Platform Plugin SDK, e.g. `IntelliJ IDEA IC-`. To check this, go to **File | Project Structure | Project Settings | Modules | theme_basics** and select **Dependencies** tab. If the required SDK doesn't exist, it can be added in **File | Project Structure | Platform Settings | SDKs** by clicking the plus button and selecting **Add IntelliJ Platform Plugin SDK...** item.