> For the complete documentation index, see [llms.txt](https://swift-packages.gitbook.io/materialuikit/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://swift-packages.gitbook.io/materialuikit/configuration-and-color-schemes/muikitconfiguration.md).

# MUIKitConfiguration

A class containing configuration properties for MaterialUIKit components.

### Overview

`MUIKitConfiguration` provides a comprehensive set of configuration options to customize the appearance and behavior of MaterialUIKit components. It includes settings for padding, font styles, spacing, corner radius, animations, haptic feedback, and color schemes, enabling developers to tailor the UI to their specific design requirements.

### Initializers

Initializes a `MUIKitConfiguration` instance with default values.

```swift
public init()
```

Initializes a `MUIKitConfiguration` instance with specified values for each property.

```swift
public init(
    contentPadding: CGFloat,
    hXL: Font,
    h1: Font,
    h2: Font,
    h3: Font,
    h4: Font,
    h5: Font,
    h6: Font,
    horizontalPadding: CGFloat,
    verticalPadding: CGFloat,
    cornerRadius: CGFloat,
    verticalStackSpacing: CGFloat,
    horizontalStackSpacing: CGFloat,
    borderWidth: CGFloat,
    animationType: Animation,
    hapticFeedbackIntensity: CGFloat,
    hapticFeedbackStyle: UIImpactFeedbackGenerator.FeedbackStyle,
    colorScheme: ColorScheme
)
```

### Properties

| Property Name             | Description                                                          | Default Value            |
| ------------------------- | -------------------------------------------------------------------- | ------------------------ |
| `contentPadding`          | Padding applied inside UI elements to separate content from borders. | `20`                     |
| `hXL`                     | Font style for extra-large header (H-XL).                            | `.largeTitle`            |
| `h1`                      | Font style for the largest header (H1).                              | `.title`                 |
| `h2`                      | Font style for the second largest header (H2).                       | `.title2`                |
| `h3`                      | Font style for the third largest header (H3).                        | `.title3`                |
| `h4`                      | Font style for medium-sized headers (H4).                            | `.body`                  |
| `h5`                      | Font style for smaller headers (H5).                                 | `.subheadline`           |
| `h6`                      | Font style for the smallest headers (H6).                            | `.caption`               |
| `horizontalPadding`       | Horizontal padding applied to UI elements.                           | `16`                     |
| `verticalPadding`         | Vertical padding applied to UI elements.                             | `16`                     |
| `cornerRadius`            | Corner radius applied to UI elements.                                | `20`                     |
| `verticalStackSpacing`    | Vertical spacing between elements in a vertical layout.              | `16`                     |
| `horizontalStackSpacing`  | Horizontal spacing between elements in a horizontal layout.          | `12`                     |
| `borderWidth`             | Width of the border applied to UI elements.                          | `1.0`                    |
| `animationType`           | Type of animation applied to UI elements.                            | `.spring(duration: 0.4)` |
| `hapticFeedbackIntensity` | Intensity of haptic feedback for interactive elements.               | `0.6`                    |
| `hapticFeedbackStyle`     | Style of haptic feedback.                                            | `.light`                 |
| `colorScheme`             | Color scheme applied to UI elements.                                 | `MaterialClassic()`      |
