Components

Streaming Text

Reveals a passage token-by-token, LLM-style, with a blinking caret that stops when complete.

php artisan blatui:add streaming-text

BlatUI streams this passage the way a language model would — one token at a time, with a blinking caret that stops the moment the response is complete.

<p class="max-w-prose text-base leading-relaxed">
    <x-ui.streaming-text
        text="BlatUI streams this passage the way a language model would — one token at a time, with a blinking caret that stops the moment the response is complete."
    />
</p>

By Word

Revealing the passage word by word feels deliberate and easy to read — handy for short, punchy lines.

{{-- Reveal whole words at a time instead of single characters. --}}
<p class="max-w-prose text-base leading-relaxed">
    <x-ui.streaming-text
        by="word"
        :speed="90"
        text="Revealing the passage word by word feels deliberate and easy to read — handy for short, punchy lines."
    />
</p>

Fast

At six milliseconds per character the text races in almost instantly — great for longer answers you still want to feel live.

{{-- A lower speed (ms per chunk) streams the text quickly. --}}
<p class="max-w-prose text-base leading-relaxed">
    <x-ui.streaming-text
        :speed="6"
        text="At six milliseconds per character the text races in almost instantly — great for longer answers you still want to feel live."
    />
</p>

No Caret

Without the caret the passage simply fades in token by token, leaving no trailing cursor once it finishes.

{{-- Hide the blinking caret with :caret="false". --}}
<p class="max-w-prose text-base leading-relaxed">
    <x-ui.streaming-text
        :caret="false"
        text="Without the caret the passage simply fades in token by token, leaving no trailing cursor once it finishes."
    />
</p>