---
title: Text Styles
description: "Yamada UI provides features to create reusable styles."
---
## Overview
Text styles are tokens that are used to reuse text styles across the project.
The styles defined in the theme are [here](https://github.com/yamada-ui/yamada-ui/blob/main/packages/react/src/theme/styles/text-styles.ts).
```tsx
Mono
```
```tsx
export const textStyles = defineStyles.textStyle({
ghost: {
color: "colorScheme.outline",
},
mono: {
fontFamily: "mono",
fontWeight: "medium",
letterSpacing: "widest",
whiteSpace: "nowrap",
},
outline: {
color: "colorScheme.outline",
},
solid: {
color: "colorScheme.contrast",
},
subtle: {
color: "colorScheme.fg",
},
surface: {
color: "colorScheme.fg",
},
})
```
## Customize
### Generate a Theme
Use the [CLI](https://yamada-ui.com/docs/theming/cli.md) to generate a theme.
:::warning
Before running the following commands, you need to install `@yamada-ui/cli` and execute the `init` command. For more details, please see [here](https://yamada-ui.com/docs/get-started/cli.md).
:::
```bash
pnpm yamada-cli theme
```
```bash
npm yamada-cli theme
```
```bash
yarn yamada-cli theme
```
```bash
bun yamada-cli theme
```
### Change the Style
Change the `styles/text-styles.ts` in the generated theme.
```tsx
import { defineStyles } from "@yamada-ui/react"
export const textStyles = defineStyles.textStyle({
gradient: {
bgClip: "text",
bgGradient: "linear(to-l, #7928CA, #FF0080)",
fontSize: "5xl",
w: "full",
},
ghost: {
color: "colorScheme.outline",
},
mono: {
fontFamily: "mono",
fontWeight: "medium",
letterSpacing: "widest",
whiteSpace: "nowrap",
},
outline: {
color: "colorScheme.outline",
},
solid: {
color: "colorScheme.contrast",
},
subtle: {
color: "colorScheme.fg",
},
surface: {
color: "colorScheme.fg",
},
})
```
### Update the Provider
Set the generated theme to `UIProvider`.
```tsx
import { UIProvider } from "@workspaces/ui"
import { theme } from "@workspace/theme"
const App = () => {
return (
)
}
```
### Use Text Style
Set the value to `textStyle`.
```tsx
```