# Customization

## Customizing Colors

To customize colors in `SnapViewController`, use the `SnapscreenUIColorConfiguration` object on the Snapscreen instance.

```
Snapscreen.instance?.colorConfiguration.background = UIColor.white
```

## Customizing Fonts

To customize fonts in `SnapViewController`, use the `SnapscreenUIFontConfiguration` object on the Snapscreen instance.

```
Snapscreen.instance?.fontConfiguration.base = UIFont.systemFont(ofSize: 14, weight: ..regular)
```

## Customizing Snap UI

To customize displayed messages in the `SnapViewController` use the `SnapscreenSnapUIConfiguration` object on the Snapscreen instance.

```swift
Snapscreen.instance?.snapUIConfiguration.snapHintText = "My custom Hint"
```

All desired customizations must be done prior to presenting the  `SnapViewController`. While it is also possible to modify the configuration between presentations of the `SnapViewController`, modifications initiated while the `ViewController` is present are not guaranteed to be respected.
