A high-performance radial SVG animator with audio reactivity and real-time visual effects. Think of it as a visual DJ tool for creating animated kaleidoscopic patterns from SVG and PNG images.
- Radial Animation: Animate SVG/PNG images in radial patterns with up to 128 clones
- Component Radial Orientation: Control how shapes orient relative to the center (point inward/outward, tangent rotation)
- Audio Reactive: Sync animations to microphone input with frequency-specific controls
- Preset System: Load pre-configured examples with custom animation settings
- Settings Management: Export/import animation settings as JSON
- Advanced Filters: Real-time post-processing effects (brightness, contrast, saturation, blur)
- Keyboard Shortcuts:
Hto toggle controls,Spaceto pause/resume
npm install
npm run dev # development server
npm run build # production build
npm run preview # preview production build- Repeats: Number of clones (1-128)
- Size: Base size of each shape
- Radius: Distance from center
- Composite Rotation: Overall pattern rotation speed
- Individual Spin: Per-shape rotation speed
- Enable/Disable: Toggle orientation relative to center
- Offset: Fine-tune orientation angle
- Presets: Point outward, point inward, or tangent alignment
- Rate: Pulsation speed
- Amount: Pulsation intensity
- Individual Variation: Per-shape randomization
- Rate: Oscillation speed
- Amount: Oscillation distance
- Individual Variation: Per-shape randomization
- Background: Background color
- Hue Rotation: Enable color cycling
- Hue Drift: Color cycle speed
- Brightness/Contrast/Saturation: Color adjustments
- Blur: Blur effect
- Enable: Sync to microphone
- Sensitivity: Overall responsiveness
- Bass/Mid/Treble Boost: Frequency-specific amplification
- Max Radius Mod: Maximum radius change from audio
- Download: Export current settings as JSON
- Upload: Import previously saved settings
- Reset: Restore default settings
- GPU-accelerated transforms with
will-changeoptimization - Fixed timestep animation loop (60 FPS)
- Batch DOM updates to minimize reflows
- Efficient clone management and memory handling
svgplayer/
├── src/
│ ├── main.ts # App initialization
│ ├── animator.ts # Core animation engine
│ ├── controls.ts # UI controls
│ ├── audio.ts # Audio analysis
│ ├── storage.ts # Settings persistence
│ ├── types.ts # TypeScript definitions
│ └── styles/main.css # Styling
├── public/
│ ├── image_assets/ # Example SVG/PNG files
│ └── presets/ # Preset JSON configurations
└── index.html # HTML entry point
- TypeScript
- Vite
- Web Audio API
- LocalStorage
- CSS3 animations
Modern browsers with ES2020 support (Chrome, Firefox, Safari, Edge). Requires microphone permission for audio reactivity.
MIT