Kunstmaan CMS

repository·7.3·Indexed 19 days ago

https://github.com/kunstmaan/kunstmaanbundlescms

An advanced full-stack content management system built on the Symfony framework. It provides features for multi-language content, page and form assembly, versioning, workflow management, translation, and media management. The system includes various specialized bundles such as KunstmaanAdminBundle for backend interfaces, KunstmaanAdminListBundle for CRUD and CSV exports, KunstmaanArticleBundle for article functionality, and KunstmaanCacheBundle for Varnish and node cache management.

Tokens
113.6K
Snippets
406
Records
542
Agent score
56%

What's inside KunstmaanBundlesCMS

  1. Overview of KunstmaanUtilitiesBundle services

    7.3

    The KunstmaanUtilitiesBundle provides helper services designed for reuse in Symfony applications. The bundle currently includes two primary services:

    1. Cipher Service: Provides string encoding and decoding using the Rijndael 256 cipher.
    2. Shell Helper Service: Provides process management capabilities, including running applications in the background, checking if a process is currently running, and killing running processes.
  2. Overview of KunstmaanAdminListBundle features

    7.3

    The KunstmaanAdminListBundle extends standard CRUD capabilities for content entities (such as blog articles or dropdown values). It provides an administrative interface for managing lists of content with the following features:

    • Filtering: Ability to filter content lists.
    • CSV Exports: Export content lists to CSV format.
    • Editing: Enhanced editing capabilities for content entities.
  3. What is KunstmaanPagePartBundle?

    7.3

    The KunstmaanPagePartBundle is the core content management framework for Kunstmaan CMS. It uses a composition-based approach where pages are built from a collection of blocks called pageparts.

    This architecture allows for a complete separation of data from presentation, enabling non-technical webmasters to manage content while developers can rapidly create project-specific pageparts. Each page can maintain its own unique list of available pageparts.

  4. Use KunstmaanBehatBundle for extended Mink functionality

    7.3

    KunstmaanBehatBundle is an extension for Behat Mink feature contexts. You can integrate it into your testing suite in two ways:

    1. Extend FeatureContext: Inherit from the bundle's FeatureContext to gain access to overridden MinkContext methods.
    2. Use SubContexts: Import specific SubContexts directly into your own Behat context configuration to use specialized functionality without inheriting the entire base class.
  5. Overview of default Kunstmaan Data Collectors

    7.3

    By default, the Kunstmaan toolbar includes three data collectors:

    • BundleVersionDataCollector: Displays the current version of the bundles and their status.
    • TranslatorDataCollector: Collects the translation keys used on the current page and provides a direct link to the translation page.
    • NodeDataCollector: Provides a one-click edit link to open the current node in the CMS.
  6. Extend fixture functionality with Builders

    7.3

    Builders allow you to manipulate entity behavior during the creation process. They can hook into three specific lifecycle stages:

    1. preBuild
    2. postBuild
    3. postFlushBuild

    Builders can be used to modify the entity being created or to trigger the creation of additional related entities.

    To add a custom builder, tag your service with kunstmaan_fixtures.builder.