PHPackages                             hemant17/pagewire - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. hemant17/pagewire

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

hemant17/pagewire
=================

Livewire 4 page builder with Mary UI for Laravel 12.

v0.2.3(2mo ago)010MITPHPPHP &gt;=8.2

Since Feb 20Pushed 2mo agoCompare

[ Source](https://github.com/hemant17/pagewire)[ Packagist](https://packagist.org/packages/hemant17/pagewire)[ RSS](/packages/hemant17-pagewire/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (8)Versions (4)Used By (0)

[![pagewire](https://camo.githubusercontent.com/b52474be048d7d80700eea0cc5ffbb5467177961d924cb0a1d8e0ddd13ff1af7/68747470733a2f2f736f6369616c6966792e6769742e63692f68656d616e7431372f70616765776972652f696d6167653f637573746f6d5f6c616e67756167653d4c61726176656c26666f6e743d536f757263652b436f64652b50726f266c616e67756167653d31266c6f676f3d687474707325334125324625324663646e2e66726565626965737570706c792e636f6d2532466c6f676f732532466c617267652532463278253246706167652d6c6f676f2d706e672d7472616e73706172656e742e706e67266e616d653d31266f776e65723d31267061747465726e3d436972637569742b426f617264267374617267617a6572733d31267468656d653d4c69676874)](https://camo.githubusercontent.com/b52474be048d7d80700eea0cc5ffbb5467177961d924cb0a1d8e0ddd13ff1af7/68747470733a2f2f736f6369616c6966792e6769742e63692f68656d616e7431372f70616765776972652f696d6167653f637573746f6d5f6c616e67756167653d4c61726176656c26666f6e743d536f757263652b436f64652b50726f266c616e67756167653d31266c6f676f3d687474707325334125324625324663646e2e66726565626965737570706c792e636f6d2532466c6f676f732532466c617267652532463278253246706167652d6c6f676f2d706e672d7472616e73706172656e742e706e67266e616d653d31266f776e65723d31267061747465726e3d436972637569742b426f617264267374617267617a6572733d31267468656d653d4c69676874)

Pagewire
========

[](#pagewire)

Livewire 4 page builder package for Laravel 12 using Mary UI components. Inspired by existing implementation with reusable/global sections.

Installation
------------

[](#installation)

```
composer require hemant/pagewire
php artisan pagewire:install
php artisan vendor:publish --tag=pagewire-config --tag=pagewire-migrations --tag=pagewire-views
php artisan migrate
```

Routes
------

[](#routes)

- Admin index: `admin/pages` (name: `admin.pages.index`)
- Builder: `admin/pages/builder/{slug?}` (name: `admin.pages.builder`)
- Menu manager: `admin/menus` (name: `admin.menus.manager`)
- Public page: `/{public_prefix}/{slug}` (default: `/pages/{slug}`) (name: `dynamic.page`)

You can change prefix/middleware via `config/pagewire.php`.

Home page (optional)
--------------------

[](#home-page-optional)

If you want Pagewire to render a "home" page at `/`, enable:

```
'home' => [
  'register_route' => true,
],
```

Pagewire will render the page marked `is_home = true` (if the column exists), otherwise it will fall back to the slug configured by `pagewire.home.fallback_slug` (default: `home`).

Layout
------

[](#layout)

Set `layout` in `config/pagewire.php` (e.g., `'layout' => 'layouts.app'`) to force the Livewire pages to use a specific Blade layout. Leave it `null` to let the caller/default layout apply.

Sections
--------

[](#sections)

Builder lists templates by scanning `config('pagewire.sections_paths')` (defaults include `resources/views/sections/*.blade.php`). Provide matching section editor partials at `resources/views/livewire/admin/page/section-editors/{section}.blade.php` (or rely on the package defaults like the `hero-area` example).

Quick scaffolding:

```
php artisan pagewire:make-section hero-area
```

This creates:

- Front-end section: `resources/views/sections/hero-area.blade.php`
- Builder editor override (namespaced): `resources/views/livewire/pagewire/section-editors/hero-area.blade.php`
- Defaults + repeater stubs: `resources/pagewire/sections/hero-area.php`

Defaults and repeaters
----------------------

[](#defaults-and-repeaters)

To avoid editing vendor code, put per-section defaults and repeater item stubs in `resources/pagewire/sections/{section}.php`:

```
return [
  'defaults' => ['title' => '...', 'description' => '...'],
  'repeaters' => [
    'items' => ['title' => '', 'description' => ''],
    'team_members.social_links' => ['platform' => '', 'url' => ''],
  ],
];
```

The builder reads these files automatically via `config('pagewire.definitions_path')`.

In editor blades, use the generic methods:

```
wire:click="repeaterAdd({{ $index }}, 'items')"
wire:click="repeaterRemove({{ $index }}, 'items', {{ $itemIndex }})"
wire:click="repeaterAddNested({{ $index }}, 'team_members', {{ $memberIndex }}, 'social_links')"
wire:click="repeaterRemoveNested({{ $index }}, 'team_members', {{ $memberIndex }}, 'social_links', {{ $linkIndex }})"
```

File uploads
------------

[](#file-uploads)

Pagewire ships an anonymous Blade component you can use in your editor partials:

```

```

Component view: `resources/views/components/file-upload.blade.php`.

Dependencies
------------

[](#dependencies)

- Laravel ^12
- Livewire ^4
- [Mary UI](https://github.com/robsontenorio/mary)
- [spatie/livewire-filepond](https://github.com/spatie/livewire-filepond)

Authorization
-------------

[](#authorization)

This package does not ship Gate/Policy checks. Protect the admin routes using your app middleware/authorization as needed.

Models
------

[](#models)

The package ships `Page`, `PageContent`, and `GlobalSection` models plus migrations. `admin_id`, `created_by`, and `updated_by` reference your default user provider; override via `PAGEWIRE_USER_MODEL` env/config if needed.

Livewire components
-------------------

[](#livewire-components)

- `pagewire.admin.page.index` – list, search, filter, duplicate, publish toggle, delete.
- `pagewire.admin.page.builder` – drag/drop sections, global reuse/override, publish/draft, file uploads.

Rendering public pages
----------------------

[](#rendering-public-pages)

The included `pagewire::page` view loops the stored sections and includes `sections.{section_name}`. Provide your front-end section blades there.

Editor assets (Quill, Cropper, etc.)
------------------------------------

[](#editor-assets-quill-cropper-etc)

By default, Pagewire can load editor-related assets from CDNs on the builder page. Configure in `config/pagewire.php`:

- `pagewire.cdn_assets.enabled` (set `false` if your app bundles these)
- `pagewire.cdn_assets.styles` / `pagewire.cdn_assets.scripts`

Menu manager
------------

[](#menu-manager)

Configure locations in `config/pagewire.php`:

```
'menu' => [
  'locations' => [
    'header' => 'Header',
    'footer' => 'Footer',
  ],
]
```

Then visit `admin/menus` to create menus, assign them to locations, and build nested menu items (drag-sort within each level; indent/outdent via buttons).

###  Health Score

35

—

LowBetter than 80% of packages

Maintenance84

Actively maintained with recent releases

Popularity5

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~3 days

Total

3

Last Release

82d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/aa6393913ae385e7a3cb127f4f9e30eee8d7bde47cb5a72c65e8b0292f2f1a20?d=identicon)[hemant17](/maintainers/hemant17)

---

Top Contributors

[![hemant17](https://avatars.githubusercontent.com/u/10548023?v=4)](https://github.com/hemant17 "hemant17 (17 commits)")

### Embed Badge

![Health badge](/badges/hemant17-pagewire/health.svg)

```
[![Health](https://phpackages.com/badges/hemant17-pagewire/health.svg)](https://phpackages.com/packages/hemant17-pagewire)
```

###  Alternatives

[livewire/volt

An elegantly crafted functional API for Laravel Livewire.

4205.3M84](/packages/livewire-volt)[ramonrietdijk/livewire-tables

Dynamic tables for models with Laravel Livewire

21147.4k](/packages/ramonrietdijk-livewire-tables)[namu/wirechat

A Laravel Livewire messaging app for teams with private chats and group conversations.

54324.5k](/packages/namu-wirechat)[marcorieser/statamic-livewire

A Laravel Livewire integration for Statamic.

2381.5k10](/packages/marcorieser-statamic-livewire)[aerni/livewire-forms

A Statamic forms framework powered by Laravel Livewire

2912.8k](/packages/aerni-livewire-forms)[team-nifty-gmbh/tall-datatables

A package to create datatables using alpinejs, tailwind, livewire and laravel

1217.2k1](/packages/team-nifty-gmbh-tall-datatables)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
