πŸŽ›οΈ

Desktop recommended

VibeSynth is a node-graph synthesizer designed for a wide display.

Please open this page on a desktop or tablet in landscape (β‰₯ 1100 px wide) for the full experience.

vibesynth vibesynth
update

Add Nodes

search

Sources

waves Oscillator
grain Noise
circle Shape
videocam Camera
water Plasma
hexagon Voronoi
lens Radial
air Flow Field
text_fields Text
video_library Video File Input

Effects

transform Transform
tune Color Adjust
auto_fix_high Kaleidoscope

Beauty Effects

flip Mirror
blur_on Displace
panorama_fish_eye Polar Warp
blur_linear RGB Split
history Feedback
flare Bloom

Compositing

merge_type Mix
layers Layer
view_quilt Composite

sensors Control Inputs

Real-time input sources for parameter control
piano MIDI
graphic_eq Audio
mouse Cursor
video_camera_back Camera Analysis
sports_esports Controller
casino Random
linear_scale Range
Overview
settings

Node Properties

Select a node to edit its properties
visibility

View Controls

bug_report Debug Info
Debug info will appear here...
sensors Control Inputs
Ready

Synthesis Projects

Rename Synthesis

Share Project

Project Statistics
Nodes: 0
Size: 0 bytes
Compressed: 0 bytes
URL Length: 0 chars

About VibeSynth

VibeSynth
A web-based modular video synthesizer
Real-time visual effects through node-based patching
Keyboard shortcuts
/ — focus palette search
L — re-apply auto-layout
G — open Demos gallery
Esc — close this dialog
Copyright
Β© 2025–2026 David and Ezra (SimbaE1) Allison
All rights reserved.
License
Licensed under the BSD 2-Clause License
Redistribution and use permitted with attribution
Technology
Built with vanilla JavaScript and WebGL
No build tools required - runs in modern browsers

Keyboard shortcuts

ActionShortcut
Show this overlayShift + /
Toggle performance HUDShift + P
Filter the node palette⌘/Ctrl + K  or  /
Open Demos galleryG
Re-apply auto-layoutL
Undo⌘/Ctrl + Z
Redo⌘/Ctrl + Shift + Z  or  ⌘/Ctrl + Y
Copy node⌘/Ctrl + C
Paste node⌘/Ctrl + V
Delete selected nodeDelete  or  Backspace
Close this overlayEsc or click outside
FPSβ€”
Frameβ€”
Nodes0
Active0
Texture pool0 / 0H 0M