UI Icons builds on the Drupal core Icon API, where any module or theme declares icon packs in YAML. It adds the user interface to pick an icon and its settings, and integrations with Drupal site building tools.
After installing this module, check our repository of examples to include existing icon pack providers.
Drupal compatibility
The 2.1.x branch is for Drupal 11.3+ and Drupal 12. All bug fixes and new features land here. The 2.0.x branch is no longer supported, update to 2.1.x.
The 1.1.x branch is deprecated. It only receives security fixes, until January 31, 2027, no bug fix or new feature, and we kindly ask you not to use it for new projects.
It targeted Drupal 11.1+, and both Drupal 11.1 and 11.2 have since reached end of life, so any site still on that branch should plan an upgrade.
If your site already runs Drupal 11.3 or newer, you can move to 2.1.x right away.
Integrations
Once discovered from the icon packs, icons can be used:
- in a Field, with its own widget and formatter, and optional icon settings per value.
- in Link fields, with a widget and a formatter, and support for Link Attributes and Linkit.
- in Menu links, with a configurable selector and allowed icon packs.
- in CKEditor 5 and a text filter, to add icons in rich text, with or without a span wrapper.
- as a Media source.
- in UI Patterns 2 components, as an icon prop.
- in Drupal Canvas.
Icons are picked with an autocomplete, a modal grid from the UI Icons Picker submodule, or an in-place popover with groups from the UI Icons Popover submodule. When enabled, the popover is the default selector in UI Patterns. Icon packs can also come from a web font, with the UI Icons Web fonts submodule.
Feel free to propose other integrations.
Icons library
The UI Icons Library sub-module generates an icons library page, rendered with the front theme, to be used as documentation for content editors or as a showcase for business and clients.
Showcases
This module does not include third-party icons but makes it very simple to add existing icons from any provider or your own, and mix them together!
Examples in contrib space:
| Bootstrap 5 | DSFR (French Gov) | USWDS (US Gov) |
![]() |
![]() |
![]() |
| 1 pack | 3 packs | 1 pack |
| DaisyUI | ||
![]() |
||
| 4 packs |
Our examples repository has ready-made configurations for 18 popular icon sets, such as Bootstrap Icons, Font Awesome, Heroicons, Lucide, Material Symbols and Tabler.
Drupal core
We are willing to push part of this module to Drupal core, The Icon API was a first step, next step:
Feel free to contact me if you're willing to help.
Incompatibility
- UI Icons for CKEditor 5 is not compatible with the ckeditor5_icons module
UI Suite
UI Icons works on its own, and is part of UI Suite, a set of modules to implement design systems in Drupal.
Support
Support my open source work on Liberapay.
Need a feature, a fix or help on your project? I take sponsored work and freelance missions: contact me.
Project information
- Project categories: Content display
- Ecosystem: UI Suite - Design Systems with Drupal
14,167 sites report using this module
- Created by pdureau on , updated
Stable releases for this project are covered by the security advisory policy.
Look for the shield icon below.
Releases
Popover icon selector, icon settings per field value and icon settings per menu.
Development version: 2.1.x-dev updated 22 Oct 2026 at 07:13 UTC





