Installation
Overview
A minimalist yet elegant text-based loading indicator that cycles through different status messages with a smooth gradient shimmer effect. Perfect for displaying AI processing states in a clean, unobtrusive way.Features
- Smooth text transitions with fade and slide animations
- Animated gradient shimmer effect on text
- Customizable text array and timing
- Fully responsive sizing
- Dark mode support with automatic gradient adjustment
- Zero-dependency animations via Framer Motion
Props
Default Props
Usage Example
Basic Usage
Custom Messages
With Custom Styling
Animation Details
Text Transition
The component uses Framer Motion’sAnimatePresence for smooth enter/exit animations:
Gradient Shimmer
The text features an animated gradient that sweeps across:- Light mode:
neutral-950→neutral-400→neutral-950 - Dark mode:
white→neutral-600→white
Customization
Change Animation Speed
Modify Gradient Colors
Edit the gradient classes in the component:Adjust Text Size
Use Cases
- AI Chat Loading: Show while waiting for AI response
- Search Processing: Display during search operations
- Data Analysis: Indicate ongoing computation
- File Processing: Show upload/processing status
- General Loading: Any async operation requiring user feedback
Integration Example
Dependencies
motion(framer-motion) - Animations and transitions@/lib/utils- cn utility for className merging
Accessibility
The component automatically handles:- Semantic HTML structure
- Readable text contrast in both light/dark modes
- Smooth, non-jarring animations
Related Components
- AI Loading - More detailed loading state with progress
- AI Voice - Voice recording indicator