Components

Loading

Indicate loading with spinner, expressive, and shape loaders.

Three loading components for different moods: UiLoading (spinner), UiExpressiveLoading (animated, cycling messages), and UiShapeLoading (animated shapes).

Spinner loading

<template>
  <UiLoading title="Loading" subtitle="Fetching your data…" spinner-size="48px" />
</template>

Expressive loading

Cycles through messages on an interval:

<template>
  <UiExpressiveLoading
    :title="['Warming up…', 'Almost there…', 'Finishing up…']"
    :interval="2500"
    size="lg"
  />
</template>

Shape loading

<template>
  <UiShapeLoading title="Generating" subtitle="This may take a moment" />
</template>

UiLoading props

PropTypeDefaultDescription
title / subtitlestring | nullText.
spinnerSizestring | number'65px'Spinner size.
hideSpinnerbooleanfalseHide the spinner.
customClassstring | string[] | nullExtra classes.

UiExpressiveLoading props

PropTypeDefaultDescription
titlestring | string[] | nullMessage, or list of messages to cycle.
intervalnumber3000Cycle interval (ms).
size'sm' | 'md' | 'lg''md'Size.

UiShapeLoading props

PropTypeDefaultDescription
title / subtitlestring | nullText.
customClassstring | string[] | nullExtra classes.
For a bare inline spinner, use UiProgressSpinner.
Copyright © 2026