Enhancing Listings in Volto

I've been working on the idea of Repeater Block for Listings to make Volto’s Listing Block more flexible and powerful by enabling it to display reusable blocks dynamically instead of relying on a fixed structure (title, description, etc.). The goal is to allow listings to use actual blocks rather than static templates—similar to how the Volto Grid Block offers flexible layouts, but with dynamic content.

Repeater Block for Listings

  • The Repeater Block would act as a wrapper, dynamically fetching and rendering data as individual blocks.
  • Each item (from Plone search, RSS feeds, APIs, social media posts, or related content) would be displayed as a fully structured block (e.g., Teaser Block, Image Block, or even a custom one).
  • This would allow listings to go beyond standard title/description templates, making them richer and more customizable.

My Current Observations

  • The Volto Grid Block allows placing custom blocks but requires manual content entry, rather than fetching data dynamically.

  • The Listing Block fetches data but lacks flexibility in how items are displayed (only basic templates, no reusable blocks).

Challenges & Open Questions

  • What’s the best approach to allow listings to pull data from RSS feeds, APIs, or related content? Should we define a common interface for source plugins?
  • Should users manually select block types for listing items, or should we provide pre-built templates for common use cases?
  • Does this align with the future vision of Volto, or would it be better implemented as a separate add-on?

Would love to hear thoughts from the maintainers and contributors! Is this the right direction or is there any better approach?