This module provides opinionated extensions to the
diffmodule that can be developed at a higher velocity than the base module.

Configuration
This module takes a user-centric approach by optionally allowing for per-user customization of most configuration items. Site owners may (and are encouraged to) grant roles the permission to customize diff plus configurations. Since not everyone is identical, users should be able to optimize their own editorial experience.
Diff Layout Plugins
Presently, a couple new diff layout plugin types are available, Visual Inline (HTML5) and Raw HTML.
The Visual Inline (HTML5) Layout
This is an attempt at improving the Visual Inline layout of the Diff module. It turns off HTMLPurifier for source content and greatly expands the HTML elements that are allowed to be processed by the upstream caxy/php-htmldiff library. See https://www.drupal.org/project/diff_plus/issues/3336511 for progress on beautiful and intuitive <img>and <picture> diffs!
The Raw HTML Diff Layout
Sometimes, changes cannot be sufficiently described by any existing diff layouts.
- The
Visuallayout has problems rendering certain elements such as pictures, buttons, etc... - Interactive elements that require javascript to function such as accordions, tabs, carousels, etc, often render...strangely.
- Certain non-visual information added via Layout Builder Overrides may have zero visibility with any of the existing Diff layouts. For example, what about a user-configurable ID on a section?

While there may be more end-user-friendly ways of tackling these problems, the most simple and direct approach is to simply provide a diff of the rendered HTML itself.
Have a suggestion?
Feel free to open an issue. Be sure to provide your use case and an actionable plan.
Project information
- Project categories: Administration tools, Content display
461 sites report using this module
- Created by luke.leber on , updated
Stable releases for this project are covered by the security advisory policy.
Look for the shield icon below.
