nepal360 / filament-cms-pro
An enterprise-grade WordPress-class CMS plugin for Laravel and Filament v5 with non-intrusive server-side analytics.
Requires
- php: ^8.2
- ezyang/htmlpurifier: ^4.16
- filament/filament: ^3.0
- illuminate/database: ^10.0|^11.0
- illuminate/http: ^10.0|^11.0
- illuminate/support: ^10.0|^11.0
- spatie/laravel-permission: ^6.0
Requires (Dev)
- orchestra/testbench: ^8.0|^9.0
- pestphp/pest: ^2.0
This package is auto-updated.
Last update: 2026-06-07 17:02:15 UTC
README
An enterprise-grade, WordPress-class Content Management System (CMS) plugin package designed for Laravel and Filament v5. It features a Gutenberg-style block editor workspace, configurable editorial workflows, multilingual support, advanced SEO schema outputs, sitemaps automation, and a non-intrusive server-side analytics tracking engine.
Key Features
- Gutenberg-Style Block Editor: Renders visual block layouts (Heading, Paragraph, Hero, Quote, CTA, Images, Galleries, FAQs, and Polls).
- Editorial Approval Workflow: Gated transitions (Draft -> Review -> Fact Check -> Editor Approval -> Publisher Approval -> Scheduled/Published) to control editorial routing.
- Non-Intrusive Server-Side Analytics: Logs page views and unique users asynchronously in middleware without executing heavy tracking Javascript libraries in the browser. Zero impact on GSC Core Web Vitals (INP, CLS, LCP). Complies with GDPR cookieless privacy.
- Automated Sitemaps & Schema: Auto-generates standard sitemaps, Google News sitemaps (last 48h posts), and injects JSON-LD article schemas.
- Polymorphic Translation Mapping: Fully localized articles, categories, and tags database schemas.
- Centralized CMS Settings: Dynamically toggle taxonomy menu visibilities, assign navigation groups, customize menu labels, and configure tables from a single admin panel.
- Dynamic Custom Fields: Dynamically inject custom metadata input components into forms (translatable fields inside translation interfaces, and non-translatable fields in primary editors).
- Customizable Tables & Filters: Toggle visible table columns (ID, Serial Number, Featured Image, etc.) and active search filters dynamically.
- Comments Moderation Resource: Dedicated interface to moderate reader comments (Pending, Approved, Spam, Rejected states) with custom metadata capabilities.
CMS Settings & Dynamic Custom Fields
Filament CMS Pro includes a centralized CMS Settings Page that allows administrators to dynamically configure resources without code modifications:
- Navigation Settings: Show/hide taxonomy menus (Categories & Tags), customize their sidebar labels, and assign them to custom navigation groups.
- Dynamic Custom Fields: Create key-value metadata schemas for Posts, Categories, Tags, and Comments.
- Supports multiple field types (Text, Textarea, Select, Toggle, Date/Time).
- Configurable as Translatable (injected directly into localized translation interfaces) or Non-Translatable (appended to the main resource forms).
- Table Column Customization: Define which columns are visible in table listings (e.g., ID, Serial Number, Featured Image, Status, and custom metadata fields).
- Dynamic Table Filters: Configure active search filters dynamically for resource table indexes.
- Comments Moderation Panel: Approve, reject, or mark reader feedback as spam under a dedicated
Commentsresource, with full custom metadata capabilities.
Documentation
Interactive developer guides, installation procedures, and block extension tutorials are hosted live at: https://tsrgtm.github.io/Filament-CMS-PRO/
Installation and Quickstart
Since the package is hosted on GitHub, you need to define it as a repository inside your Laravel application's composer.json file before running composer require:
Step 1: Add Repository to composer.json
Open your Laravel application's composer.json and add the repositories block:
"repositories": [ { "type": "vcs", "url": "https://github.com/Tsrgtm/Filament-CMS-PRO.git" } ]
Step 2: Install Package
Run the following composer require command:
composer require nepal360/filament-cms-pro:dev-main
Please refer to the installation steps and Custom Block Extension guide detailed inside the live documentation page.