Paragraphs Bundles gives Drupal editors 39 ready-made paragraph types — carousels, accordions, tabs, hero banners, image grids, modals, parallax sections and more — installed as 27 optional submodules so you enable only what you use. It requires Drupal 11.3 or 12, and it is free on drupal.org.
The problem it solves
Paragraphs is the right way to build flexible content in Drupal, but out of the box it gives you the mechanism and none of the components. Every project starts the same way: someone spends a week building an accordion bundle, a card bundle and a slideshow bundle, and then the next project starts from zero again.
Paragraphs Bundles is that week of work, done once, maintained properly, and given away. I have rebuilt it twice — this is version 2, modernised for Drupal 11.3 and 12 with object-oriented hooks throughout.
Requirements
| Requirement | Value |
|---|---|
| Drupal core | ^11.3 || ^12 |
| Core modules | Field, File, Filter, Link, Media, Options, Text |
| Contributed | Entity Reference Revisions |
Note the core requirement carefully: this is a Drupal 11.3+ module. Version 2 dropped Drupal 10 deliberately in order to use modern hook classes and the current Paragraphs API rather than carrying compatibility shims. If you are still on Drupal 10, stay on the 1.x branch until you upgrade — and if that upgrade is the thing blocking you, it is work I do.
How the CSS works — and why it matters
This is the design decision that separates Paragraphs Bundles from most component libraries, and it is worth understanding before you install it.
- Per-paragraph dynamic CSS files, not inline styles. When an editor sets a colour on a paragraph, that choice is written to a generated stylesheet, not stamped into the markup as a
styleattribute. Your HTML stays clean and your pages stay cacheable. - Deliberately un-layered CSS. The module does not wrap its rules in cascade layers, which means an editor's explicit choice wins over the theme's default rather than losing to it.
- BEM-strict class naming. Every class follows block-element-modifier convention, so overriding one component never leaks into another.
The practical result: Paragraphs Bundles is theme-agnostic. It has no theme dependency and no theme integration to configure. It works under Solo, under a core theme, or under a custom theme you wrote yourself — and in each case the editor's choices survive.
What you get: 39 bundles in 27 submodules
Every bundle is its own submodule. Enable the three you need and the other 24 never load, so you are not carrying CSS and templates for components you will never place.
Display and media
Carousel, 3D Carousel, Slideshow, Image, Image Grid, Image Overlay, Image Background, 3D Flip Box, Icon.
Interactive
Accordion, Tabs, Modal, Parallax, Alert.
Layout and structure
Layout, Grid, Card, Hero, Content.
Integration
Views, Block, Block Content, Node Reference, Link, Webform, Contact Form.
AI
The suite also ships paragraphs_bundles_ai, an optional submodule for AI-assisted paragraph workflows. Like every other submodule it is off until you enable it.
Installation
composer require drupal/paragraphs_bundles
Enable the base module and only the bundles you want:
drush en paragraphs_bundles -y
drush en paragraph_bundle_accordion paragraph_bundle_card paragraph_bundle_slideshow -y
drush cr
Then add a Paragraphs reference field to your content type and choose which bundles editors may place.
Typical workflow
- Create or edit a node with a Paragraphs field.
- Add a paragraph and choose its bundle — Card, Accordion, Hero and so on.
- Use the Content tab for text and media, and the Display tab for appearance: colours, spacing, alignment.
- Save. The generated stylesheet for that paragraph is written automatically.
Paragraphs Bundles or Layout Builder?
This is the question I am asked most often, and the honest answer is that they solve different problems.
| Consideration | Paragraphs Bundles | Layout Builder |
|---|---|---|
| What it structures | Content — the paragraphs are field data on the node | Display — the layout is configuration on the view mode |
| Best for | Editors composing a page from known components | Site builders defining how a content type renders |
| Translation | Paragraph content translates like any other field | Layout translation needs more care |
| Migration | Paragraphs move with the content | Layouts are per-display configuration |
Plenty of sites use both: Layout Builder for the page skeleton, Paragraphs Bundles for the components an editor drops into it. They do not conflict.
Troubleshooting
- The bundle I want is not in the "Add paragraph" list
- Two causes. Either its submodule is not enabled — check Extend — or the Paragraphs reference field on your content type has that bundle unticked in its field settings.
- My colour choice is not showing
- Clear caches after the first save on a new bundle, because the generated stylesheet is attached through the render cache. If it persists under a theme that repaints text colour broadly, the theme is overriding
coloron elements the module owns no rule for. - Installation fails on a Drupal 10 site
- Expected. Version 2 requires
^11.3 || ^12. Use the 1.x branch on Drupal 10. - Entity Reference Revisions is missing
- Composer installs it automatically. If you installed by downloading the module rather than through Composer, add it with
composer require drupal/entity_reference_revisions.
Related projects
- Paragraphs Bundles Import — bulk-create paragraphs and nodes from CSV instead of building them by hand.
- Solo — a free theme with 24 regions that pairs well with these bundles, though neither requires the other.
- W3CSS Paragraphs — the earlier generation of this idea, still maintained.
Common questions
Do I have to enable all 27 submodules?
No, and you should not. Enable only the bundles you will place. Each submodule carries its own templates and CSS, so leaving 24 disabled means 24 fewer assets on your pages.
Does it work with any theme?
Yes. There is no theme dependency. The CSS is deliberately un-layered so that editor choices win under whatever theme you run.
Will it work on Drupal 10?
Version 2 requires Drupal 11.3 or later. Drupal 10 sites should stay on the 1.x branch.
Are editor colour choices saved as inline styles?
No. They are written to per-paragraph generated stylesheets, which keeps markup clean and pages cacheable.
Need a hand?
Paragraphs Bundles is free and GPL-licensed, like all my contributed work. If you want help designing a component set around it, migrating an existing site onto it, or moving from Drupal 10 to 11 or 12 so you can use version 2, that is my day job.
Read about my Drupal services, see what a Drupal developer brings to a project, or get in touch.