gingerminds/laravel-cms

CMS functionalities for Laravel projects

Maintainers

Package info

github.com/gingerminds/laravel-cms

pkg:composer/gingerminds/laravel-cms

Transparency log

Statistics

Installs: 181

Dependents: 0

Suggesters: 0

Stars: 0

2.6.3 2026-08-04 13:57 UTC

README

Menus, pages, and a WYSIWYG editor for Laravel projects built on gingerminds/laravel-core and gingerminds/laravel-multisite. It provides:

  • Menu and MenuItem models — site-scoped, with translatable menu items (name, URL, description per language).
  • An admin CRUD for menus with a drag-and-drop tree UI for reordering items.
  • Page and PageCategory models — site-scoped, translatable, with nested categories, optional page-category assignment, and a precomputed per-language URL index (PageUrl) kept automatically in sync.
  • An admin CRUD for pages and page categories, including a "choose category" tree modal shared with laravel-media-manager's look.
  • A content block system for PageTranslation::content (schema-driven blocks, extensible/overridable per project), with a reference "Title + Text" block.
  • A TipTap-based WYSIWYG editor Blade component, with configurable toolbar presets.
  • A read-only API exposing menus and their active item tree, plus pages (by id, by path, or by code).

Requirements

  • PHP ^8.4
  • gingerminds/laravel-core ^3.0
  • gingerminds/laravel-multisite ^2.2

Quick start

composer require gingerminds/laravel-cms
php artisan vendor:publish --tag=gingerminds-cms-config
php artisan vendor:publish --tag=gingerminds-assets
php artisan migrate

Then register the package's models with API Platform (see Installation) and install the required npm packages (TipTap, SortableJS).

Documentation

  • Installation
  • Configuration
  • Components — the WYSIWYG editor
  • Menus — models, admin screens, drag-and-drop reordering
  • Pages — models, home-page semantics, admin screens, filters
  • Blocks — content block contract, registry, admin editing flow
  • API — admin routes and API Platform endpoints