Problem/Motivation
We need to introduce a new Canvas-supported component called Impressed Card.
This component is intended to provide a simplified card pattern based on Bootstrap 5
and aligned with the Featured Card structure, but with a cleaner authoring experience.
The goal is to:
- Allow drag & drop only in the Content area.
- Render the Media area strictly from an uploaded image (no drag & drop slot).
- Provide flexible styling options using Bootstrap utility classes.
- Ensure full compatibility with Canvas (Experience Builder) without inline CSS or JS.
Here is design: https://www.figma.com/design/shEqHupsCBTp2CmIiA84rv/VB---Stylesheet_2024...

Steps to reproduce
- Enable the theme containing the new Impressed Card component.
- Open Canvas (Experience Builder).
- Add the Impressed Card component to a section.
- Upload/select an image in the Media field and confirm it renders in the Media area.
- Drag and drop any Canvas-supported components into the Content slot.
- Test the available settings:
- Padded select field: Small, Medium, Large, Extra Large.
- Background color option using Bootstrap
bg-*classes. - Shadow including Extra Large option.
Proposed resolution
- Create a new Canvas-supported component: Impressed Card.
- Use Bootstrap 5 structure and utility classes (no inline styles).
- Implement a single drag & drop Content slot using block-based rendering.
- Render Media from an uploaded image field only (no media dropzone).
- Provide configurable options:
- Padding (Small → Extra Large).
- Background color (Bootstrap classes).
- Shadow (including Extra Large).
- Optional border, equal height, anchor all, link target, HTML ID and classes.
- Ensure full Canvas compatibility and clean production-ready implementation.
Remaining tasks
- ✅ File an issue about this project
- ❌ Addition/Change/Update/Fix to this project
- ❌ Testing to ensure no regression
- ➖ Automated unit/functional testing coverage
- ➖ Developer Documentation support on feature change/addition
- ➖ User Guide Documentation support on feature change/addition
- ➖ UX/UI designer responsibilities
- ➖ Accessibility and Readability
- ❌ Code review from 1 Varbase core team member
- ❌ Full testing and approval
- ❌ Credit contributors
- ❌ Review with the product owner
- ❌ Update Release Notes
- ❌ Release
Varbase update type
- ✅ No Update
- ➖ Optional Update
- ➖ Forced Update
- ➖ Forced Update if Unchanged
User interface changes
- N/A
API changes
- N/A
Data model changes
- N/A
Release notes snippet
- N/A
| Comment | File | Size | Author |
|---|---|---|---|
| Impressed-Card-My-Varbase-site (1).png | 9.13 MB | alamgir.hossain.cse |
Issue fork vartheme_bs5-3574177
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #2
alamgir.hossain.cse commentedComment #3
alamgir.hossain.cse commentedComment #6
rajab natshahComment #8
rajab natshahComment #9
rajab natshahIn the new 5.0.x logic we could pass
media_classesdirectly to the image component, no need for a div as in the old 4.0.x logicComment #10
alamgir.hossain.cse commentedComment #11
rajab natshahComment #12
alamgir.hossain.cse commentedComment #16
rajab natshah