Add functionality and customize your Drupal application with thousands of projects contributed by our amazing community.
A module is code that extends Drupal's by altering existing functionality or adding new features. You can use modules contributed by others or create your own. Learn more about creating and using Drupal modules.
Field Formatter Class
🇺🇦 This module is maintained by Ukrainian developers. Please consider supporting Ukraine in a fight for their freedom and safety of Europe. Allows site administrators to add classes to the outer...
Categories: Content display, Site structure
Gin Toolbar
Helper module to bring the Gin Toolbar into the Frontend of your site. Requires the Gin Admin Theme. This module is needed due to some technical limitations of Drupal (Admin) themes. ⚠️ Please add...
Categories: Administration tools, Content editing experience, Site structure
CKEditor5 Template
This project provides a CKEditor 5 plugin for Drupal. It allows to insert predefined content. It is a successor of the Drupal ckeditor_templates module. The predecessor is unfortunately only...
Categories: Content editing experience
Workbench
Workbench provides site contributors a way to easily create and find their own content. Drupal provides a great framework for building functionality. Workbench helps harness content-focused...
Categories: Content editing experience
Tagify
Tagify module integrates Drupal autocomplete and Tagify component, providing a widget that significantly enhances the usability of entity reference fields. This widget seamlessly transforms these...
Categories: Administration tools, Content editing experience, Site structure
Real-time SEO for Drupal
Improve your Drupal SEO: this module helps you optimize content around keywords in a fast, natural, non-spam way. We want to give you the best tools available in the Drupal community. The Real-time...
Categories: Search engine optimization (SEO)
OpenAPI
This module allows you to make your Drupal information architecture (as exposed by your web service of choice) discoverable using the OpenAPI standard. This can then be used by a wide variety of UI...
Categories: Content editing experience, Decoupled, Developer tools
Views Reference Filter
This module provides the views filter for entity ID or entity reference fields: node ID user ID taxonomy term ID the ID of any other content entity entity reference field (Drupal core), including...
Select (or other)
Provides a new Forms API element which is a select/radios/checkboxes element that has an 'other' option. When 'other' is selected a textfield appears for the user to provide a custom value. Module...
Categories: Site structure
Layout Builder Modal
This module lets you add and configure existing blocks in a modal in the Layout Builder UI. Layout Builder provides you with the tools to create a modern authoring experience. It was intially...
Categories: Administration tools, Content display
Disable language
Disable language lets you disable languages on Drupal 8 sites. It does the following things when you disable a language: Filters out the disabled languages in the language switcher Filters out the...
Categories: Multilingual
Translation template extractor
The Translation template extractor provides a web based and Drush-integrated Gettext translation template extractor interface for Drupal as well as a reusable API to look for translatable strings...
Categories: Developer tools, Multilingual
Replicate
Replicate module provides an API to duplicate / clone an entity. Basics Replicate provides a main cloning function, along with several hooks to control exactly how a field or entity is duplicated...
Layout Builder Restrictions
SummaryThis module provides a configurable UI for restricting blocks and layouts. Sites can allow all options from a certain provider, or restrict all options by provider, or specify individual...
Categories: Content display
Update helper
This module offers supporting functionalities to make configuration updates easier. Important notes This module has Drush command. In order to execute it properly, you have to use Drush installed...
Categories: Developer tools
Menu Trail By Path
Menu Trail By Path sets the active-trail on menu items according to the current url. For example if you are at yoursite.com/blog/category1/article1 Menu Items with these paths will get the active...
Categories: Administration tools, Site structure
Chosen
Chosen uses the Chosen javascript library to make your elements more user-friendly. Usage By default the module will automatically apply itself to any select elements that have more than 20 options...
Categories: Administration tools, Content editing experience, Integrations
File Entity (fieldable files)
File entity provides interfaces for managing files. It also extends the core file entity, allowing files to be fieldable, grouped into types, viewed (using display modes) and formatted using field...
CKEditor5 HTML Embed
This module allows embedding arbitrary HTML snippets in the editor by enabling CKEditor5's HTML Embed feature. From CKEditor's documentation: Some examples of content that can be embedded thanks to...
Categories: Content editing experience
Image URL Formatter
This module add a url formatter for image field. Then you can output image url directly. Most of the code, maybe more than 90%, is just copy from the drupal core. I think it is stable enough. I...
Categories: Content editing experience, Site structure
Canvas Translate Extension
Translate Drupal Canvas content directly inside the Canvas editor without requiring a separate workflow. Canvas Translate adds a translation panel to the Canvas sidebar, letting editors translate...
Categories: Multilingual, Site structure
Computed Field
Computed Field is a very powerful field module that lets you add a custom "computed fields" to your content types. These computed fields are populated with values that you define in PHP code. You...
Categories: Site structure
reCAPTCHA v3
Google reCAPTCHA v3 Module provides a streamlined and secure solution for integrating Google reCAPTCHA v3 and fallback challenges into your Drupal site. This module enhances security without adding...
Categories: Access control, Integrations, Security
Views Token Argument
Views Token Argument allows you to use token as contextual filter for Views. You can use both current user values or the entity related to the current page (for example the current node on node/x...
ImageField
ImageField provides an image upload field for CCK. ImageField is a CCK-based alternative to the legacy Image project. It boasts features such as multiple images per node, resolution restrictions,...
Categories: Content editing experience, Media