voodflow / voodbuilder
VoodBuilder — Filament page builder and public site shell for Laravel (Community free / source-available; Pro companions optional).
Requires
- php: ^8.4
- filament/filament: ^5.0
- filament/spatie-laravel-media-library-plugin: ^5.0
- illuminate/contracts: ^12.0|^13.0
- ralphjsmit/laravel-seo: ^1.8
- solution-forest/filament-nestable-tree: ^1.0
- spatie/laravel-medialibrary: ^11.0
- spatie/laravel-package-tools: ^1.15
- spatie/laravel-settings: ^3.0|^4.0
- spatie/laravel-sluggable: ^3.8
- voodflow/vmedia: ^0.2
Requires (Dev)
- orchestra/testbench: ^10.0|^11.0
- phpunit/phpunit: ^11.0
- spatie/laravel-markdown: ^2.7
Suggests
- voodflow/vcookiebar: Optional cookie / consent bar for the public site (can gate tracking scripts).
- voodflow/vforms: Paid add-on: managed forms and submissions with optional VoodBuilder blocks.
- voodflow/voodbuilder-components: Paid companion: saved components library and global classes.
- voodflow/voodbuilder-dynamic-data: Paid companion: Dynamic Data bindings, Model Integrations, and List repeat.
- voodflow/voodbuilder-elements: Paid companion: remote Elements library (api.voodflow.com) for Pro/Agency section catalog.
- voodflow/voodbuilder-templates: Paid companion: page template authoring (save, JSON import/export).
- voodflow/vpopups: Paid add-on: popup builder (requires VoodBuilder). Same GrapesJS editor, targeting, analytics.
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-09-07 16:19:58 UTC
README
Visual page builder and public site shell for Laravel + Filament 5 — themes, pages, navigation, and a GrapesJS editor with a usable Community (free) edition.
Docs & pricing: voodflow.com
License: Community is free to use — see LICENSE. Paid add-ons are separate products on voodflow.com.
Features
| Capability | What you get |
|---|---|
| Visual editor | Drag-and-drop canvas, device previews, undo / redo, revision history, autosave, style inspector |
| Community core | Layout · Basic · Media · Single · Site blocks, plus local marketing sections (hero, features, CTA, FAQ, …) |
| Theme Studio | Map colours / sub-themes to Site pages and content channels |
| Page access | Public, registered-only, profile-based gates, optional password unlock |
| Menu-driven URLs | Pages get public routes from Navigation (e.g. /about or /company/about) |
| Media | voodflow/vmedia is required by Composer; register its Filament plugin for the admin media UI |
| Chrome layouts | Shared header / footer shells per channel, editable in the same builder |
Optional packages (cookie bar, Elements, Dynamic Data, Templates, Components, Popups, content verticals) extend the same editor. Details: voodflow.com.
Requirements
- PHP 8.4+
- Laravel 12+ / 13+
- Filament 5+
- Node.js + npm (for the host Vite build)
- Vite + Tailwind CSS v4 (theme CSS compiles in your app)
voodflow/vmedia(pulled in by Composer)
Optional: laravel/fortify for public login / /account.
Installation
composer require voodflow/voodbuilder -W php artisan voodbuilder:install
-W lets Composer settle Guzzle when a fresh Laravel app locked Guzzle 8 while a dependency needs Guzzle 7.
voodbuilder:install publishes config, runs migrations, seeds settings + empty menus (no sample pages by default), patches Vite / package.json (Editor, Tailwind, CodeMirror, fonts, …), runs npm install, and npm run build when npm is on PATH.
Then register plugins on your Filament panel. Only VoodbuilderPlugin is required — add others only if those packages are installed:
->plugins([ \Voodflow\Voodbuilder\VoodbuilderPlugin::make(), \Voodflow\Vmedia\VmediaPlugin::make(), // recommended: media admin UI // \Voodflow\Vcookiebar\VcookiebarPlugin::make(), // \Voodflow\Vpopups\VpopupsPlugin::make(), // \Voodflow\Vforms\VformsPlugin::make(), ])
After install you should see Pages, Menus, Theme Studio, Settings (and Layouts when enabled) under the Voodbuilder nav group.
First visit to /: with no home page yet, the public site shows a setup card (create a Layout, then a Page). The default Blade header/footer is hidden on that screen — it is not a Layout record. Opt-in sample pages: VOODBUILDER_SEED_SAMPLE_PAGES=true.
Frontend build
Theme CSS and the editor compile through your app’s Vite (public/build/manifest.json). The package cannot ship a one-size-fits-all prebuilt bundle.
- Default:
voodbuilder:installalready runsnpm run build - Skip compile:
--skip-npm-build/--skip-npm, then laternpm run buildornpm run dev - If the public site shows a yellow “assets not built” notice, run
npm run buildfrom the app root
Admin menu & permissions
- Without Filament Shield: anyone who can open the Filament panel sees VoodBuilder resources
- With Filament Shield: generate and assign resource permissions, or set
VOODBUILDER_AUTHORIZATION=panelin.envto allow all panel users
Stock Laravel
GET /inroutes/web.phpoverrides the VoodBuilder home route — the install command removes it.
Do not publish duplicate package migrations.
Flags: --skip-npm, --skip-npm-build, --skip-seed, --skip-migrate, --force.
Site pages & routing
- Admin → Voodbuilder → Layouts — create a site shell (header/footer), then enable it.
- Admin → Voodbuilder → Pages — create a home page and open the visual editor.
- Admin → Voodbuilder → Menus — link menu items to the page (or to a named route / URL).
- Public URLs come from config:
| Mode | Example |
|---|---|
| Prefixed (default) | /pages/about |
Menu paths (menu_paths) |
/about or /company/about from the menu tree |
'pages' => [ 'enabled' => true, 'route_prefix' => 'pages', // '' + menu_paths → clean URLs from Navigation 'menu_paths' => false, ],
Reserved first segments (admin, vmedia, voodbuilder, login, …) never become page sections, so package APIs are not shadowed.
Page access
Per page you can combine:
- Visibility — public / registered users / profile-based gates
- Password — unlock form; session TTL configurable (
password_unlock_minutes)
Theme Studio
Admin → Voodbuilder → Theme Studio maps sub-themes (palettes + optional CSS) to areas:
- Site pages
- Content channels (docs, tutorials, events, …) when those packages register channels
Light / dark is a global preference on top of the area theme.
Editor
- Block library with layout, media, and marketing sections
- Style inspector (Tailwind-aware)
- Device previews (desktop / tablet / mobile)
- Undo / redo and page revisions
- Media picker via vmedia
Documentation
| Where | What |
|---|---|
| voodflow.com | Guides, pricing, demos |
Package CHANGELOG.md |
Release notes |
| SECURITY.md | Vulnerability reporting |
Licence & support
- Community core: free to use — see LICENSE
- Paid add-ons: voodflow.com
- Security: SECURITY.md (not via public issues)


