Extending the editor
Prefer declarative markers
For static Tailwind sections, mark HTML with data-vb-* so the Content sidebar appears without custom PHP or JS. See Declarative fields.
Custom inspector UI
When built-in field types are not enough, register a block settings descriptor from your editor JS bundle (registerBlockSettings). Match a block id, render controls into the Content mount, write values back onto the canvas.
Server-rendered companion blocks keep their own config + render path (for example pricing blocks) — do not mix that with declarative static sections.
Dynamic data
Expose Eloquent models through Model Integrations (Dynamic Data) or API Data Sources (Agency). Authors bind from the Dynamic tab; do not invent parallel config stores in page HTML for those values.
Assets
Theme CSS and the editor compile through the host Vite app. After package updates, re-run php artisan voodbuilder:install or npm run build as documented in Frontend build.