Skip to main content
Glama
component.md5.27 kB
# WavyText **Category:** Text Animation **Purpose:** Continuous wave motion animation on characters ## Overview WavyText creates a playful, continuous wave motion effect where each character oscillates vertically with a phase offset, creating a smooth wave pattern across the text. Perfect for fun, energetic content like music videos, party themes, or any project that needs a dynamic, bouncy aesthetic. ## How It Works The component applies a sinusoidal wave motion to each character: - **Wave amplitude**: Controls the height of the vertical oscillation - **Wave frequency**: Determines the spacing between wave peaks (how tight the wave is) - **Wave speed**: Controls how fast the wave moves through the text - **Phase offset**: Each character starts at a different point in the wave cycle, creating the continuous wave effect ## Parameters - **text**: Text to animate with wave (required) - **font_size**: Font size - xl, 2xl, 3xl, 4xl (default: "4xl") - **font_weight**: Font weight - normal, medium, semibold, bold, extrabold, black (default: "bold") - **text_color**: Text color (uses on_dark color if not specified) - **wave_amplitude**: Height of wave oscillation in pixels, 5-50 (default: 20.0) - **wave_speed**: Speed of wave motion, 0.1-5.0 (default: 1.0) - **wave_frequency**: Frequency of wave (spacing between peaks), 0.1-2.0 (default: 0.3) - **position**: Vertical position - center, top, bottom (default: "center") - **align**: Text alignment - left, center, right (default: "center") - **duration**: Total duration in seconds (default: 3.0) ## Design Token Integration - **Typography:** Uses `font_sizes['4xl']`, `font_weights.bold`, `primary_font`, `letter_spacing.wide` - **Colors:** Uses `text.on_dark` by default - **Spacing:** Uses `spacing.xl` and `spacing['4xl']` ## Wave Configuration Guide ### Amplitude - **5-10px**: Subtle bounce, professional but playful - **15-25px**: Moderate wave, clear motion (recommended) - **30-40px**: Dramatic wave, very animated - **45-50px**: Extreme wave, use sparingly for high energy ### Frequency - **0.1-0.2**: Wide waves, gentle rolling motion - **0.3-0.5**: Medium waves, balanced aesthetic (recommended) - **0.6-1.0**: Tight waves, more peaks visible - **1.5-2.0**: Very tight waves, rapid oscillation ### Speed - **0.1-0.5**: Slow, smooth, calming - **0.8-1.2**: Medium speed, energetic (recommended) - **1.5-3.0**: Fast, exciting, high energy - **3.5-5.0**: Very fast, frantic, use for impact ## Examples ```python # Basic wave text { "type": "WavyText", "config": { "text": "WAVE", "font_size": "4xl", "wave_amplitude": 20.0, "wave_frequency": 0.3, "wave_speed": 1.0, "duration": 3.0 } } # Gentle rolling wave { "type": "WavyText", "config": { "text": "Smooth Vibes", "font_size": "3xl", "wave_amplitude": 15.0, "wave_frequency": 0.2, "wave_speed": 0.5, "font_weight": "semibold" } } # High energy party text { "type": "WavyText", "config": { "text": "LET'S GO!", "font_size": "4xl", "font_weight": "black", "wave_amplitude": 35.0, "wave_frequency": 0.4, "wave_speed": 2.0, "text_color": "#FF00FF" } } # Music video title { "type": "WavyText", "config": { "text": "Summer Nights", "font_size": "4xl", "wave_amplitude": 25.0, "wave_frequency": 0.3, "wave_speed": 1.2, "position": "center", "text_color": "#00FFFF", "duration": 5.0 } } # Subtle professional wave { "type": "WavyText", "config": { "text": "Innovation", "font_size": "3xl", "font_weight": "medium", "wave_amplitude": 8.0, "wave_frequency": 0.25, "wave_speed": 0.8, "position": "top" } } ``` ## Best Practices 1. **Use wave_amplitude 15-25px** for most cases - visible but not overwhelming 2. **wave_frequency 0.3-0.5** creates the most natural wave pattern 3. **wave_speed 0.8-1.5** for energetic but not frantic motion 4. **Keep text short** (1-4 words) for best visual impact 5. **Bold fonts work best** - wave motion is more visible with heavier weights 6. **Bright colors** enhance the playful feel (#FF00FF, #00FFFF, #FFFF00) 7. **Use larger font sizes** (3xl, 4xl) to make wave motion more apparent ## Common Use Cases - **Fun titles** for lighthearted or playful content - **Music videos** for dance, pop, or energetic tracks - **Creative content** for artistic or experimental projects - **Playful effects** for children's content or entertainment - **Party/celebration themes** for events, festivals, or celebrations - **Product launches** with fun, approachable branding - **Social media content** for attention-grabbing posts - **Gaming content** for casual or arcade-style games ## Visual Feel - **Playful:** Bouncy motion creates a fun, lighthearted atmosphere - **Energetic:** Continuous movement adds dynamism and life - **Rhythmic:** Wave pattern creates a sense of flow and rhythm - **Attention-grabbing:** Motion naturally draws the eye - **Youthful:** Feels fresh, modern, and approachable - **Musical:** Wave motion evokes audio waveforms and music visualization

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/chrishayuk/chuk-mcp-remotion'

If you have feedback or need assistance with the MCP directory API, please join our Discord server