Page Builder
Get Started
Ship Pages 10x Faster rocket_launch Blade Native inventory_2 JSON Driven bolt Zero DB Overhead

Compose Dynamic Landing Pages with Laravel & Blade

JSON-driven page system for Laravel. Zero boilerplate, zero DB, sub-ms renders.

Hero Image
Why Developers Love It

Built for Developers Who Ship Fast

Strict layer separation, PHP 8.2+ typing, pure Blade execution.

code Zero Config

Inline @schema() Directive

Declare field schemas directly inside Blade view files. No separate YAML files, database migrations, or complex config maps.

palette Multi-Theme

Multi-Theme Shadowing

Theme files automatically shadow built-in package layouts, sections, and blocks with last-registration priority.

description Git Friendly

Clean JSON Storage

Pages are stored as clear, deterministic JSON files. Version control your content layouts directly in Git.

bolt 0.2ms Speed

Sub-Millisecond Speed

Hydrated runtime models render straight to Blade views with sub-millisecond execution and zero runtime database queries.

tune Rich Inputs

13+ Field Schema Types

Rich text (TipTap), color pickers, range sliders, dropdown selects, image pickers, icon pickers, URLs, and local blocks.

verified_user PHP 8.2+

Strictly Typed PHP 8.2+

Built using immutable readonly value objects, 5-layer isolation (Schema -> Registry -> Components -> Renderer -> Services).

Developer Workflow

How Laravel Page Builder Works

From Blade view files to full dynamic landing page composition in 3 simple steps.

01

Write @schema() in Blade

Create a Blade view in resources/views/sections/. Define your settings, local blocks, and default presets in pure PHP arrays.

hero.blade.php
@schema([
    'name' => 'Hero',
    'settings' => [
        ['id' => 'title', 'type' => 'text']
    ]
])
02

Compose Layout in JSON

Assemble pages with JSON documents or use the drag-and-drop live preview editor to tweak settings in real-time.

home.json
{
  "sections": {
    "hero": {
      "type": "hero",
      "settings": { "title": "Hello" }
    }
  },
  "order": ["hero"]
}
03

Render Effortlessly

Render the entire page using Page::render('home') or @blocks($section) in Blade. Enjoy native Blade execution speed.

PageController.php
// Controller
return Page::render('home');

// Or Blade Directive
@blocks($section)
Benchmarks

Built for Speed, Engineered for Precision

Zero runtime database queries, strict layer encapsulation, and sub-millisecond Blade hydration.

bolt
< 0.2ms
Render Overhead

Fast Blade view hydration with zero extra SQL queries.

tune
13+
Setting Types

Rich text, image pickers, colors, sliders, icons, URLs.

verified
100%
PSR-12 Typed

Readonly value objects & PHP 8.2 strict typing.

inventory_2
0
DB Lock-in

Pure JSON document persistence & theme shadowing.

Social Proof

Trusted by Laravel Developers & Architects

See why engineers choose our schema-driven Blade builder over traditional bloated alternatives.

star star star star star
"Laravel Page Builder allowed us to give content creators full layout control without sacrificing clean Blade code or performance."
A
Alex Taylor
Lead Architect · Acme SaaS
star star star star star
"The inline @schema() directive is pure genius. Defining settings right next to HTML elements eliminated hours of context switching."
E
Elena Rostova
Senior Fullstack Dev · DevPulse
star star star star star
"Multi-theme shadowing works like a charm. We built a multi-tenant SaaS with custom theme layouts in under a week."
M
Marcus Vance
CTO · CloudStack
Licensing & Plans

Transparent Options for Every Project

100% open source core with powerful optional developer tooling.

Community

Open Source
$0 / forever

Perfect for individual developers and open-source Laravel applications.

  • Full Blade @schema Engine
  • Multi-Theme Shadowing
  • JSON Page Storage
  • 13+ Schema Field Types
  • Zero Database Lock-in
  • Community Discord Support
Install via Composer
Most Popular

Developer Pro

$99 / one-time

Enhanced live preview editor UI with advanced TipTap rich text integrations.

  • Everything in Community
  • Live Drag & Drop UI Editor
  • TipTap Rich Text Blocks
  • Theme Generator CLI
  • Priority Email Support
  • Commercial SaaS License
Get Pro License

Enterprise

Organizations
Custom / contact us

For large organizations building multi-tenant white-label page builders.

  • Everything in Pro
  • Multi-Tenant Field Isolation
  • Custom Schema Field Plugins
  • White-label Editor Branding
  • Dedicated SLA & Support
  • Architecture Code Audit
Contact Team
FAQ

Frequently Asked Questions

Answers to common developer questions about schema extraction, theme shadowing, and performance.

How does the inline @schema() directive work?
@schema() is extracted directly from your Blade view files by SchemaExtractor during scanner registration. It registers immutable SectionSchema and BlockSchema value objects without running or rendering the view.
Do I need database migrations for page layouts?
No! Pages and templates are backed by clean JSON documents stored on disk in your resources directory. You can track layouts directly in Git version control.
How does theme shadowing work?
When a theme is active, any Blade file located in your theme views directory automatically shadows built-in package sections and blocks. Last registration always wins.
What setting types are supported in @schema()?
Supported types include text, textarea, richtext (TipTap), select, radio, checkbox, number, range slider, color, image_picker, alignment, icon_picker, and url.
What is the performance overhead of rendering pages?
Hydrated section and block models render directly into native Blade views with sub-millisecond execution times (<0.2ms) and zero extra database queries.
Ready to Build?

Start Building in 60 Seconds

One command. Zero config. Pure Blade.

$ composer require coderstm/laravel-page-builder content_copy copy
Edit Page