volto-hero-block

March 27, 2026 ยท View on GitHub

Releases

Pipeline Lines of Code Coverage Bugs Duplicated Lines (%)

Pipeline Lines of Code Coverage Bugs Duplicated Lines (%)

Enhanced Hero Block Volto add-on

Features

Hero Block

Upgrade

Upgrading to 9.x

This version requires Volto >= 17.18 or Volto 18+. It removes the custom EditBlockWrapper usage in favor of Volto's built-in block chrome provided by BlocksForm.

Breaking changes

  • Removed EditBlockWrapper render prop from BlocksForm. The BlocksForm children render prop that wrapped each inner block in <EditBlockWrapper> has been removed. BlocksForm now handles block chrome internally via Volto core's EditBlockWrapper. Any code that relied on the children render prop pattern in the hero block's Edit component will need to be updated.
  • disableInnerButtons continues to work via the existing CSS rules in edit.css rather than the previously used disabled prop on EditBlockWrapper.

Upgrading to 2.x

This version requires: @plone/volto >= 16.0.0.alpha.46 (schemaEnhancer / addStyling).

Upgrading to 6.x

Starting with version 6.0.0 we have the following breaking changes from version 5.x.x:

  1. Removed inner div that was used to add quoted-wrapper class. This class is now added on the main div alongside the other block options.
  2. Block is using BlocksForm to add more than one Slate blocks. This is useful in case you have to add some sub titles or extra paragraphs inside the Hero block. The default Slate tag is still h2 but you can change it using the rich text options toolbar.

Getting started

Try volto-hero-block with Docker

  git clone https://github.com/eea/volto-hero-block.git
  cd volto-hero-block
  make
  make start

Go to http://localhost:3000

make start now defaults to Volto 18. To run the same setup against Volto 17, use:

  VOLTO_VERSION=17 make
  VOLTO_VERSION=17 make start

Add volto-hero-block to your Volto project

  1. Make sure you have a Plone backend up-and-running at http://localhost:8080/Plone

    docker compose up backend
    
  2. Start Volto frontend

  • If you already have a volto project, just update package.json:

     "dependencies": {
         "@eeacms/volto-hero-block": "*"
     }
    

    and volto.config.js:

    const addons = ['@eeacms/volto-hero-block'];
    
  • If not, create one with Cookieplone, as recommended by the official Plone documentation for Volto 18+:

    uvx cookieplone project
    cd project-title
    
  1. Install or update dependencies, then start the project:

    make install
    

    For a Cookieplone project, start the backend and frontend in separate terminals:

    make backend-start
    make frontend-start
    

    For a legacy Volto 17 project, install the package with yarn and restart the frontend as usual.

  2. Go to http://localhost:3000

  3. Happy editing!

Release

See RELEASE.md.

How to contribute

See DEVELOP.md.

The Initial Owner of the Original Code is European Environment Agency (EEA). All Rights Reserved.

See LICENSE.md for details.

Funding

European Environment Agency (EU)