Volto Hydra Documentation

A Visual Headless CMS using Plone as a server, providing true visual editing with drag-and-drop blocks and editable text — with any frontend stack you choose.

Why Hydra?

  • Visual + True Headless + Open Source — a unique combination in the CMS space
  • Framework agnostic — Next.js, Nuxt.js, Astro, plus server-only stacks (PHP, Django, Rails, Laravel) via the server-render pattern
  • Quick visual editing — enable it with simple HTML data attributes, no React or Vue required in your frontend
  • Omni-channel — switch between multiple frontends mid-edit
  • Enterprise features — versioning, i18n, workflow, and automated content rules
  • Customisable — both the admin interface and block definitions are fully configurable

Try the online demo

The fastest way to feel what Hydra does is to log into the hosted demo and edit a real page against a real frontend.

Open <https://hydra.pretagov.com>, log in, then:

  • Open user preferences (bottom-left).
  • Pick one of the preset frontends, or paste in your own frontend URL.
  • Edit any page — every change updates the live preview.

The default preset is a Nuxt.js frontend deployed as an SSG to demonstrate scale-to-zero editing on free hosting. An Astro example demonstrates the server-render pattern for static-first frameworks. See Build a frontend › Deployment patterns.

To run Hydra locally against your own frontend, see the Run Locally section of the project README.

Introduction

The introductory block allows the display of an introductory text, which is displayed larger than normal continuous text.

Link (Internal)

The Link content type can be used to display links on the page. Users are automatically redirected to the external site when they click on the link.

Listings & Dynamic Blocks

A listing block fetches content from the server (e.g. latest news) and renders each result as a separate block, repeating each block once per result entry. This means a listing can be moved between containers and reuse normal blocks for what it repeats.

Listing

The listing block allows the display of various listings of content. Editors can configure a number of criteria for listing content (e.g. all news from 2022 with the keyword 'research').