Facade — Voodbuilder
Sample documentation (demo only)
This is an incomplete, outdated docs snapshot shipped with the playground — screenshots were removed on purpose.
For the full, current manuals go to voodflow.com/docs.
Voodflow\Voodbuilder\Voodbuilder
- File:
Voodbuilder.php - Kind:
class - Responsibility: Public static facade for host-app and third-party registration (modules, blocks, bindings, channels, fonts, entitlements). Do not edit Core to extend.
Methods
public static function modules(): ModuleRegistry- Returns the ModuleRegistry singleton.
public static function registerModule(VoodBuilderModule $module, bool $enabled = true): void- Register an official or third-party module before ModuleRegistry::boot(). Prefer calling from a ServiceProvider Application::booting() callback.
public static function entitlements(): EntitlementManager- Returns the EntitlementManager singleton.
public static function can(string $capability): bool- Whether the current edition grants the capability (delegates to EntitlementManager).
public static function cannot(string $capability): bool- Inverse of
can().
- Inverse of
public static function richContentBlock(string $group, string $blockClass): void- Registers a Filament RichContentCustomBlock class under a group.
public static function subTheme(string $id, array $definition): void- Registers a sub-theme definition (label, layouts, css) by id.
public static function contentChannel(string $id, array | PublicContentChannel $definition): void- Registers a public content channel from array definition or PublicContentChannel instance.
public static function reservePathPrefix(string ...$prefixes): void- Reserve first-segment public path prefixes so site-page catch-alls never claim them.
public static function reservedPathPrefixes(): array- Returns all reserved first-segment path prefixes.
public static function readingPreview(string $channelId, array | callable $definition): void- Register a reading-typography preview sample for the Layout visual builder.
public static function dynamicPageProvider(DynamicPageProvider $provider): void- Register a companion provider for dynamic SitePage templates that claim public routes.
public static function dynamicPageRelatedBindingSource(string $channelId, string $sourceId, callable $when): void- Register an extra ".current" binding source for a dynamic page channel.
public static function registerChannelStylesheet(string $absolutePath): void- Register optional channel stylesheet for theme.css sync.
public static function editorBlockConfig(string $blockId, array $options = []): void- Register editor block defaults and/or event-scoping metadata.
public static function editorPublishedEventIdResolver(callable $resolver): void- Registers the callable that resolves the published event id for event-scoped blocks.
public static function menuItemType(string $key, array | MenuItemTypeHandler $definition): void- Register a plugin-handled navigation menu item type (e.g. docs nav from vdocs).
public static function editorBlock( string $id, string $label, string $category, string $content, array $attributes = [], ): void- Registers a static HTML editor block definition (id, label, category, content).
public static function editorRichContentBlock(string $category, string $blockClass): void- Registers a RichContentCustomBlock as a dynamic editor block under a category.
public static function editorServerBlock(string $category, string $blockClass): void- Registers an EditorServerBlock implementation under a category.
public static function editorBindingSource(EditorBindingSource $source): void- Registers an EditorBindingSource for data-voodbuilder-bind resolution.
public static function editorCondition(string $key, callable $handler): void- Register a custom visual condition evaluator for the Editor conditions UI.
public static function editorLabels(callable $provider): void- Contribute labels to the visual editor bootstrap payload.
public static function editorConfig(callable $provider): void- Contribute extra keys to the visual editor bootstrap payload (e.g. companion options).
public static function editorRepeatList( string $id, string $label, callable $resolver, array $sortFields = [], string $defaultSort = 'id', string $defaultDirection = 'desc', array $aliases = [], ): void- Register a List repeat query (package lists outside Model Integrations).
public static function fonts(): FontCatalog- Extensible webfont catalog (Fontsource core + plugin providers).
public static function registerFonts(array | FontDefinition $fonts): void- Registers one or many FontDefinition entries into the font catalog.
public static function registerBindingImageResolver(string $modelClass, string $fieldId, callable $resolver): void- Register a custom image URL resolver for a model field (level 4 — exotic storage).