Search by

gingerminds / symfony-cms

gingerminds

Menus, pages, content blocks and search for Gingerminds Symfony projects

Package info

github.com/gingerminds/symfony-cms

Type:symfony-bundle

pkg:composer/gingerminds/symfony-cms

Statistics

Installs: 15

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

1.1.2 2026-11-04 09:26 UTC

This package is auto-updated.

Last update: 2026-11-04 09:27:39 UTC


README

Menus, pages, content blocks and search for Gingerminds Symfony admin panels, built on gingerminds/symfony-core, gingerminds/symfony-media-manager and gingerminds/symfony-multisite — the Symfony 8 counterpart of gingerminds/laravel-cms:

  • menus of a site, trees of translated items, and the main menu of each site;
  • pages in a tree of categories building their URLs, a publication workflow extensible by configuration, front preview links;
  • content blocks: nine bundled blocks (text, images, medias, video, cards, slider, links, FAQ), your own in a class, overridden or extended, edited in a canvas with previews;
  • a WYSIWYG form type (TipTap 3) with server-side sanitizing;
  • a cross-content search with a pluggable engine (database by default, TNTSearch, Elasticsearch...) and facets;
  • a public API of the menus, pages and search, by site and language.

Requires PHP 8.4, Symfony 8.1, Doctrine ORM 3, API Platform 4.4, symfony/workflow, symfony/messenger, symfony/html-sanitizer, gingerminds/symfony-core ^1.9, gingerminds/symfony-media-manager ^1.2 and gingerminds/symfony-multisite ^1.2.

Installation

composer require gingerminds/symfony-cms

Then follow Installation (bundle, routes, site entity, TipTap, database, permissions).

Documentation

Getting started

Contents

  • Menus — menus, items, main menu of a site.
  • Pages — categories, pages, publication workflow, URLs.
  • Blocks — bundled blocks, writing, overriding and extending blocks, files and medias.
  • Forms — WysiwygType, BlockCanvasType, PublicationStatusType.
  • Search — indexed contents, sync, adding a content type, writing an engine.

API

  • API — menus, pages, search.

Development

make install       # composer install (Docker)
make assets        # importmap + sass of the test application
make qa            # phpstan, phpcs, phpunit
make serve         # test application on http://127.0.0.1:8000/admin

The test application (tests/Application) boots the core, media manager, multisite and CMS bundles on SQLite, with an in-memory Flysystem storage, project blocks (a block with every field type, an override and an extension of a bundled block) and an in-memory search engine. APP_ENV=test php tests/Application/bin/console ...; the test_no_fallback environment disables translation_fallback, test_memory_search uses the in-memory search engine.