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.
Language Switcher Fallback
Overview When a Drupal page doesn't have translations in some languages, the default Language Switcher block shows links to those languages as strikethroughed. Language Switcher Fallback module...
Categories: Multilingual
IMCE Private Public Buttons
The IMCE Private module adds separate IMCE buttons for private and public files to CKEditor 4 & 5, so you can access the non-default filesystem. The module does not set any permissions or block...
Categories: Media
Config Importer and Tools
🇺🇦 This module is maintained by Ukrainian developers. Please consider supporting Ukraine in a fight for their freedom and safety of Europe. This module aims to cover development needs with managing...
Categories: Administration tools, Developer tools
Composite Reference
The Composite Reference module allows users to mark entity reference fields as composite. Composite reference fields ensure that referenced entities get deleted when the referencing entity is...
Categories: Content editing experience, Developer tools
Bbcode
The Drupal bbcode.module adds a BBCode filter to Drupal. This allows you to use HTML-like tags as an alternative to HTML itself for adding markup to your posts. BBCode is easier to use than HTML...
Categories: Content editing experience
Token formatters
Provides additional token-izable field formatters. This allows you to easily and fully customize how fields are output. Supported field types Entity reference Node and user references Core:...
Categories: Site structure
Views Complex Grouping
The Views Complex Grouping allow you to - Attached fields to each grouping field - Limit the number of rows under each grouping field View Default Grouping -Group by Field 1 Value 1 - Field 2 Value...
Phrase TMS Integration for TMGMT
Easily translate your Drupal content with the Phrase Translation Plugin for TMGMT. At Phrase, we’re transforming language technology, opening the door to global business so you can reach more...
Categories: Multilingual
Olark Chat
The Olark module provides some simple integration between the Olark live chat service and Drupal. The module also provides a Context reaction to allow you to add the code using more complex Context...
Categories: Integrations
Countdown Timer Field
Module description Countdown timer field module allows you to create countdown timer field to count the days, hours, minutes, and seconds until a specified event. The module uses jQuery Countdown...
Categories: Content editing experience, Content display
MEFIBS - More exposed forms in blocks
Functionality Views display extender that provides logic and UI for additional exposed form blocks, so as to have multiple blocks with exposed form elements on the same page. Exposed filters can be...
Commerce API
This module extends the JSON:API implementation provided by Drupal for the Commerce module and its ecosystem. It adds capabilities beyond the default create, read, update, and delete operations for...
Categories: Decoupled, E-commerce
GraphQL Core Schema
This module automatically exposes a configurable GraphQL schema based on your entity types and fields. Read the full documentation on how to use this module. What is implemented The base schema...
Better Local Tasks
Drupal's 'local tasks' tab array doesn't always look great. It can also interfere with the theme when administering content. This module just adds a bit of polish to the local task tabs, by fixed...
Categories: Administration tools
node privacy byrole
Manage which roles can view, edit, and/or delete nodes by content type (default) or on a per-node basis (overriding defaults on each node). Also supports changing permissions using Actions. This...
Categories: Access control
Comment Bonus API
This module enhances the standard Drupal comment module's API by providing hooks in comment_render(), which allow you to manipulate comment threads in your own way. It also provides a better...
Categories: Content display
Entity Path
This module provides a user interface to change the internal path/URI of entities. This is done by replacing path patterns with token values of the given entity. Features path patterns...
Categories: Content editing experience, Administration tools, Site structure
Elasticsearch - Search API
Elasticsearch - Search API provides a framework to set up custom Elasticsearch based search pages.It depends on search_api to manage your indexed data and elasticsearch_connector to set up a...
Categories: Site search
HTMX
HTMX in Drupal Core! HTMX was added as a dependency to Drupal on in 11.2 as part of the Replace AJAX API with HTMX community initiative. A full featured integration is now in Drupal 11.3. This...
Categories: Developer tools
Context Redirect
This module provides a Context reaction which redirects to a given internal or external url if the context conditions are met. You could use this module to redirect users of specific roles to a...
Categories: Administration tools, Content display, Developer tools
Block Visibility by Term
Block Visibility by Term extends the block visibility interface in Drupal 7 and allows the user to control block visibility based on the terms that a node is tagged with. For each block, taxonomy...
Categories: Site structure, Developer tools
Paste Format (filter, clean-up pasted text)
Paste Format allows you to clean-up the text you copy/paste into your content from other web pages, MS documents, e-mail clients, etc. Currently works only with CKEditor editor either through...
Mobile app links
Allow managing app association dynamically /.well-known/assetlinks.json /.well-known/apple-app-site-association /.well-known/apple-developer-domain-association.txt /.well-known/apple-developer...
Categories: Decoupled, Developer tools
Google QR Code Generator
This project leveraged the Google QR Code Generator from their charts API to display a block containing a QR code for the current URL you are viewing. It was simple, straight forward, and should...
Categories: Content display, Media
Purge Ajax Processor
INTRODUCTION Provides a Purge processor which Sends an Ajax request on every page load to process the purge queue. REQUIREMENTS Purge module. See: https://www.drupal.org/project/purge. INSTALLATION...
Categories: Performance