Wagtail Blocks: Cards
This Wagtail block can be used to add a series of cards. It is styled on the editor screen.
pip install wagtailblocks-cards
wagtailblocks_cards to your installed apps.
A CardsBlock is just a ListBlock with extra styling on the editor screen. Use it the exact same way as a ListBlock.
from wagtailblocks_cards.blocks import CardsBlock
body = StreamField([ ('cards', CardsBlock(MyCustomBlock())) ])
MyCustomBlock() with a custom block of your choice.
Finally, template as usual.
You can also add a CardsBlock inside of a StructBlock or other structual block types for more control. You may want to inject more custom CSS to make it span the full width if you aren't using help text, or change the number of columns.