Add functionality and customize your Drupal application with thousands of projects contributed by our amazing community.

3,313 modules match your search

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.

CAPTCHA Pack

CAPTCHA Pack examples

The CAPTCHA Pack module contains several CAPTCHA types for use with the CAPTCHA module. The CAPTCHA Pack module is meant to provide lightweight, yet effective alternatives for the traditional image CAPTCHA, which is undesirable in certain situation (e.g. bandwidth restrictions, cpu restrictions, accessibility constraints, etc).

Domain Path

Domain Path for a node

The Domain Path module allows the creation of separate path aliases per domain for nodes created using the Domain Access module.

Password Have I Been Pwned?

This module checks user passwords using Troy Hunt's excellent Have I Been Pwned (HIBP) service.

Protected Node

A protected node

With the Protected Node module, users can restrict access to a node with a password they provide when creating the node (or a site wide password or a per node type password).

Entity Group Field

UI when editing an entity that belongs to no groups

Entity Group Field provides a computed field that can be configured on any entity types that are associated with Groups, allowing users with sufficient p

Form Mode Control

In Drupal 8, you can create form modes which control how the fields are displayed in the edit form of content such as nodes and taxonomy terms.

User CSV Import

Show button on People page leading to the form

This module imports user fields from a CSV file and creates a new user account with the information contained in the file. In addition, it lets you select which fields to import.

Shortcut per Role

Assign Shortcut Set to a Role

Shortcut per Role is a simple module to allow a shortcut set to be assigned per role.

Node Access Rebuild Progressive

Utility module that provides an alternative mean of rebuilding the Content Access table.

Terms of Use

Terms of Use Admin UI

This module adds Terms of Use and a [x] I agree check box to the registration page.

Keycloak OpenID Connect

OpenID + Keycloak Logo

The Keycloak module provides a Keycloak login provider client for the OpenID Connect module.

User Expire

This module allows an administrator to define a date on which to expire a specific user account or to define a period at a role level where inactive accounts will be locked.

Remember me

Fostering a relationship of trust with your visitors is essential when you aim to collect personal information and provide a service with which they feel secure.

Group Media

Media tab on Group page

This module is designed to associate group specific media elements with a group when using the Group module.

Language access

D8 Permission list

Restrict user access to locale languages using permission.
Useful for sites where multilingual content has not been fully prepared yet.

Features Roles Permissions

Adds support for exporting roles with related permissions in features.
Port of the patch from https://drupal.org/node/1411678.

Search Restrict

Restrict by role who can search for each content type.

Approach of this module is to re-write the search query, so that content is indexed and available as search results to users in role(s) that have permissions to view it, but not displayed to other roles.

Integrates with Apache Solr to exclude results based on the role of the person searching.

SAML Service Provider

The SAML SP module allows Drupal to function as a Service Provider. This means that users can authenticate to Drupal (without a username or password) via a SAML IDP (Identity Provider) that has been pre-registered with Drupal.

Login one time

Login one time provides the ability to email one-time login links to users.

IP Ranges

IP Ranges UI

IP Ranges is a module that let's you completely ban both single IP-addresses as well as
full ranges from your site. The ban is triggered already at the early bootstrap phase, so you
can get rid of unwanted visitors as early as possible without wasting server resources.

You can also define whitelists that override blacklists, both single and ranged.
The UI is similar to core ip-ban, so you will feel like home immediately.

INSTALLATION

Just enable the module as usual.

USAGE

After enabling the module, go to admin/config/people/ip-ranges to find form where you can enter either single IP-address or IP Range, and a list type.

IP-address range is entered in the form of 100.100.100.100 - 100.100.101.150.
(This is currently the only allowed range form, other types like bitmasks may come at later stage).

Type can be either "blacklist" or "whitelist",
where blacklisted IP's are denied from the site, and whitelisted are allowed.
Whitelists always override blacklists.

ALTERNATIVES

Restrict IP allows you to enter whitelists. All other IP's are banned.
Unlike IP Ranges, it does not actually restrict access to the page, but rather

Services API Key Authentication

A Services authentication provider that adds API-key access to an endpoint. Allows user selection for performing endpoint tasks.

Disable user 1 edit

Disable user 1 edit module makes it so that that all operations on user 1 is disabled.

Pages