# UI Builder

> Use a visual authoring tool to create and edit UI Toolkit assets such as UXML and USS files.

UI Builder lets you visually create and edit UI assets, such as UI Documents (`.uxml`), and StyleSheets (`.uss`), that you use with [UI Toolkit](/engine/6000.0/manual/uitoolkits/uielements.md).

You can also install the following optional packages that offer additional functionality in UI Builder:

* The `com.unity.vectorgraphics` package allows you to assign a `VectorImage` as a background style on an element.
* The `com.unity.2d.sprite` package allows you to assign a 2D Sprite asset (or sub-asset) as a background style on an element. With the 2D Sprite package installed, you can also open the 2D Sprite Editor directly from the Editor pane.

| **Topic**                                                                                                                         | **Description**                                                                                                                            |
| --------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| [UI Builder interface overview](/engine/6000.0/manual/uitoolkits/uielements/uibuilder/uib-interface-overview.md)                  | Understand the UI Builder interface.                                                                                                       |
| [Get started with UI Builder](/engine/6000.0/manual/uitoolkits/uielements/uibuilder/uib-getting-started.md)                       | Understand the workflow to create UI in UI Builder by an example.                                                                          |
| [Work with elements](/engine/6000.0/manual/uitoolkits/uielements/uibuilder/uib-structuring-ui-elements.md)                        | Learn how to structure UI controls in your project.                                                                                        |
| [Use UXML instances as templates](/engine/6000.0/manual/uitoolkits/uielements/uibuilder/uib-structuring-ui-templates.md)          | Learn how to use existing UXML Documents as templates inside your UXML Documents in UI Builder.                                            |
| [Style UI with UI Builder](/engine/6000.0/manual/uitoolkits/uielements/uibuilder/uib-styling-ui-using-uss-selectors.md)           | Learn how to create and manage USS styles, how to use USS selectors and variables, and how to position elements and set background images. |
| [Assign USS variables in UI Builder](/engine/6000.0/manual/uitoolkits/uielements/uibuilder/uib-styling-ui-using-uss-variables.md) | Learn how to assign and remove a USS variable in UI Builder.                                                                               |
| [Test UI](/engine/6000.0/manual/uitoolkits/uielements/uibuilder/uib-testing-ui.md)                                                | Debug your styles and test inside the UI Builder.                                                                                          |

## Additional resources

* [Get started with UI Toolkit](/engine/6000.0/manual/uitoolkits/uielements/uie-simple-ui-toolkit-workflow.md)
* [Get started with runtime UI](/engine/6000.0/manual/uitoolkits/uielements/uie-support-for-runtime-ui/uie-get-started-with-runtime-ui.md)
* [Structure UI with UXML](/engine/6000.0/manual/uitoolkits/uielements/uie-structure-ui/uie-uxml.md)
* [Style UI with USS](/engine/6000.0/manual/uitoolkits/uielements/uie-uss.md)
* 📖 **E-Book**: [UI Toolkit for advanced Unity developers - UI Builder](/engine/6000.0/manual/best-practice-guides/bpg-uiad-index/ui-builder.md)
