PHPackages                             yezzmedia/laravel-user-content - 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. yezzmedia/laravel-user-content

ActiveLibrary

yezzmedia/laravel-user-content
==============================

Customer-managed pages, navigation, redirects, and forms for Yezz Media customer projects.

0.1.2(1mo ago)001MITPHPPHP ^8.3

Since Jul 2Pushed 1mo agoCompare

[ Source](https://github.com/yezzmedia/laravel-user-content)[ Packagist](https://packagist.org/packages/yezzmedia/laravel-user-content)[ RSS](/packages/yezzmedia-laravel-user-content/feed)WikiDiscussions feature/user-content-project-navigation Synced 1w ago

READMEChangelog (2)Dependencies (13)Versions (4)Used By (1)

yezzmedia/laravel-user-content
==============================

[](#yezzmedialaravel-user-content)

Customer-managed pages, navigation, redirects, and forms for Yezz Media customer projects.

Modules
-------

[](#modules)

- **Pages** — Page model with slugs (`spatie/laravel-sluggable`), publication workflow, automatic navigation via `show_in_navigation` flag.
- **Navigation** — Menu link management with page-bound and external URLs, section support (header/footer), and breadcrumb building.
- **Redirects** — Exact-match redirects with 301/302 support, loop protection, and automatic redirect creation on page slug changes.
- **Forms** — Form definitions with configurable field types, submission storage, honeypot spam protection, IP-based rate limiting, and mail delivery hooks.

Requirements
------------

[](#requirements)

- PHP 8.3+
- Laravel 13+
- `yezzmedia/laravel-foundation` ^0.2
- `yezzmedia/laravel-user-projects` ^0.2
- `spatie/laravel-sluggable` ^3.8
- `spatie/laravel-honeypot` ^4.7
- `filament/filament` ^5.0

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

[](#installation)

```
composer require yezzmedia/laravel-user-content
```

The service provider is auto-discovered.

Run the install command to publish and execute migrations:

```
php artisan website:install
```

Configuration
-------------

[](#configuration)

Publish the config file:

```
php artisan vendor:publish --tag=user-content-config
```

Usage
-----

[](#usage)

### Pages

[](#pages)

Pages are scoped to a project. Create pages through the project admin UI (Hub → Select Project → Pages).

```
use YezzMedia\Content\Models\Page;

$pages = Page::published()->inNavigation()->get();
```

### Navigation

[](#navigation)

Navigation menus are built from published pages with `show_in_navigation = true` plus external `NavigationLink` records.

```
use YezzMedia\Content\Support\NavigationManager;

$menu = app(NavigationManager::class)->buildMenu($project, 'header');
```

### Redirects

[](#redirects)

Redirects resolve by exact source path match:

```
use YezzMedia\Content\Support\RedirectManager;

$redirect = app(RedirectManager::class)->resolve($project, '/old-page');
```

### Forms

[](#forms)

Form definitions with configurable fields. Submissions are stored with spam protection.

```
GET /{project}/form/{formDefinition}  → Livewire SubmitForm component

```

Events
------

[](#events)

- `YezzMedia\Content\Events\PagePublished`
- `YezzMedia\Content\Events\PageUnpublished`
- `YezzMedia\Content\Events\PageSlugChanged`
- `YezzMedia\Content\Events\PageCreated`
- `YezzMedia\Content\Events\PageUpdated`
- `YezzMedia\Content\Events\PageDeleted`
- `YezzMedia\Content\Events\FormSubmissionReceived`

Permissions
-----------

[](#permissions)

- `content.pages.view`, `content.pages.create`, `content.pages.update`, `content.pages.publish`
- `content.navigation.manage`
- `content.redirects.manage`
- `content.forms.manage`, `content.forms.submissions.view`, `content.forms.submissions.export`

Changelog
---------

[](#changelog)

See [CHANGELOG.md](CHANGELOG.md).

###  Health Score

36

—

LowBetter than 79% of packages

Maintenance90

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community5

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

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 ~14 days

Total

2

Last Release

46d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/107888802?v=4)[Yezz-Media](/maintainers/yezzmedia)[@yezzmedia](https://github.com/yezzmedia)

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/yezzmedia-laravel-user-content/health.svg)

```
[![Health](https://phpackages.com/badges/yezzmedia-laravel-user-content/health.svg)](https://phpackages.com/packages/yezzmedia-laravel-user-content)
```

###  Alternatives

[backstage/mails

View logged mails and events in a beautiful Filament UI.

16429.7k](/packages/backstage-mails)[awcodes/filament-curator

A media picker plugin for FilamentPHP.

441414.6k29](/packages/awcodes-filament-curator)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3915.5k](/packages/rawilk-profile-filament-plugin)[relaticle/custom-fields

User Defined Custom Fields for Laravel Filament

16472.9k](/packages/relaticle-custom-fields)[stephenjude/filament-two-factor-authentication

Filament Two Factor Authentication: Google 2FA + Passkey Authentication

85264.8k11](/packages/stephenjude-filament-two-factor-authentication)[statikbe/laravel-filament-flexible-content-blocks

The Laravel Filament Flexible Content Blocks package helps you to easily create content in Filament for any model, with predefined or custom blocks, and foreach block an extendable Blade view component.

17927.9k6](/packages/statikbe-laravel-filament-flexible-content-blocks)

PHPackages © 2026

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