Animated Message Creator
Create stunning animated text messages with particle effects, wave animations, and color cycling. Export as WebM video or GIF-ready frames.
About
Static text fails to capture attention in digital communication. This tool renders animated typography on an HTML5 Canvas using parametric easing functions and per-character transform matrices. Each character receives independent x, y, Īø, α, and s values driven by time-dependent equations. The particle system uses Euler integration with configurable gravity g and initial velocity v0 to generate confetti, sparkle, and firework effects. Color cycling interpolates through HSL space at a rate of Ļ degrees per frame with a phase offset Ļ per character index, producing rainbow and gradient sweeps. All rendering runs at 60 fps inside a single requestAnimationFrame loop.
Export captures canvas frames via the MediaRecorder API into a WebM container. The tool assumes a constant frame rate and does not compensate for dropped frames during recording. Pro tip: keep message length under 80 characters for readable animations at smaller canvas sizes. Particle-heavy presets on low-end mobile GPUs may drop below 30 fps. The reduced-motion preference is respected: if enabled, the tool renders a static styled message instead.
Formulas
Each character at index i is positioned using base coordinates plus time-dependent offsets. The wave animation applies a vertical displacement:
where A = amplitude in pixels, f = frequency in Hz, t = elapsed time in seconds, Ļ = phase offset per character index, and y0 = baseline vertical position.
The elastic easing function used for bounce animations follows:
where t ā [0, 1] is the normalized progress. The exponential decay 2ā10t controls the damping envelope.
Particle positions update via Euler integration each frame:
where g = gravitational acceleration in px/s², dt = frame delta time, v = velocity vector, and p = position vector. Particles are recycled when their lifetime Ļ expires or they leave the canvas bounds.
Rainbow color per character:
where h0 = base hue, Īh = hue spread per character in degrees, and Ļ = angular velocity of the color cycle in °/s.
Reference Data
| Animation Type | Algorithm | Parameters | Visual Effect | Performance Cost |
|---|---|---|---|---|
| Typewriter | Sequential reveal with delay d | Speed: 20 - 200 ms/char | Characters appear one by one with cursor blink | Low |
| Wave | y = A ā sin(Ļt + Ļi) | Amplitude: 5 - 40 px, Frequency: 0.5 - 5 Hz | Characters oscillate vertically in sine wave | Low |
| Bounce In | Elastic easing per character with stagger | Stagger: 30 - 150 ms, Overshoot: 1.2 - 2.0 | Characters drop from above and bounce into place | Low |
| Fade In | Alpha interpolation α(t) with stagger | Duration: 200 - 1500 ms | Characters fade from transparent to opaque | Low |
| Spiral In | Polar to Cartesian: r(t) ā 0 | Radius: 50 - 300 px, Spin: 1 - 4 turns | Characters spiral inward from random angles | Medium |
| Rainbow Cycle | HSL hue rotation: h = (h0 + i ā s + t ā Ļ) mod 360 | Spread: 5 - 30 °/char | Continuous color flow across text | Low |
| Shake | Random offset: Īx, Īy ā [āA, A] | Intensity: 1 - 10 px | Text vibrates rapidly in place | Low |
| Glitch | Random slice offset + RGB channel split | Frequency: 2 - 15 Hz, Split: 1 - 8 px | Digital distortion flicker effect | Medium |
| Zoom Pulse | Scale: s(t) = 1 + A ā sin(Ļt) | Amplitude: 0.05 - 0.3 | Text breathes in and out rhythmically | Low |
| Sparkle Particles | Euler integration: p += vā dt | Count: 20 - 200, Life: 0.5 - 3 s | Glowing particles emit from text edges | High |
| Confetti Burst | Euler with gravity: vy += gā dt | Count: 50 - 200, Gravity: 200 px/s² | Colored rectangles burst and fall with rotation | High |
| Neon Glow | Multiple shadowBlur passes with hue shift | Blur: 5 - 30 px, Pulse: on/off | Text glows like a neon sign | Medium |