banulakwin/filament-seo-engine

Filament admin panel for banulakwin/laravel-seo-engine SEO management.

Maintainers

Package info

github.com/banulalakwindu/filament-seo-engine

pkg:composer/banulakwin/filament-seo-engine

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

1.0.0 2026-05-17 18:35 UTC

This package is auto-updated.

Last update: 2026-05-17 18:39:13 UTC


README

Latest Version on Packagist Tests Total Downloads License

Reusable Filament admin package for SEO management with banulakwin/laravel-seo-engine.

Requirements

  • PHP ^8.2
  • Laravel ^11.0|^12.0|^13.0
  • Filament ^5.0
  • banulakwin/laravel-seo-engine ^1.0

Installation

composer require banulakwin/filament-seo-engine

Register plugin in your panel:

use Banulakwin\FilamentSeoEngine\FilamentSeoEnginePlugin;

->plugins([
    FilamentSeoEnginePlugin::make(),
])

Features

  • Static page SEO resource (seo_meta records with model_type=static_page by default).
  • Reusable SEO form schema for seo() relationship tabs in existing resources.
  • Reusable SEO infolist schema for view pages/tabs.
  • Global search with page key, meta title, and description.
  • Type-aware image uploads with aspect ratio presets.

Reusable model SEO tab

Use in any edit page tab system that supports relationship-backed schema:

use Banulakwin\FilamentSeoEngine\Schemas\SeoContentForm;

...SeoContentForm::relationshipSchema('seo')

For view pages/infolists:

use Banulakwin\FilamentSeoEngine\Schemas\SeoContentInfolist;

SeoContentInfolist::section('seo')

Runtime assumptions

  • Host app uses banulakwin/laravel-seo-engine.
  • SEO storage is centralized in seo_meta.
  • Static pages use model_type = config('seo.static_page_model_type', 'static_page') and string model_id.
  • Dynamic models use a seo() relation (typically via Seoable) and should be edited inline via reusable schemas.

Testing

composer test          # Run PHPUnit
composer pint          # Fix code style
composer phpstan       # Static analysis
composer quality       # Run all (pint + phpstan + test)

Changelog

See CHANGELOG.md for details.

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/your-feature)
  3. Run composer quality to ensure tests and style pass
  4. Commit and push
  5. Open a pull request

Package layout (reference)

src/
  FilamentSeoEnginePlugin.php
  FilamentSeoEngineServiceProvider.php
  Resources/StaticPageSeos/
    StaticPageSeoResource.php
    Pages/
      ListStaticPageSeos.php
      EditStaticPageSeo.php
      ViewStaticPageSeo.php
    Schemas/
      StaticPageSeoInfolist.php
    Tables/
      StaticPageSeosTable.php
  Schemas/
    CommonImageUpload.php
    SeoContentForm.php
    SeoContentInfolist.php

License

MIT — see LICENSE for details.