17,778 Modules match your search

Extend and customize Drupal functionality with contributed modules. If a module doesn't quite do what you want it to do, if you find a bug or have a suggestion, then join forces and help the module maintainer. Or, share your own by starting a new module.

Libraries API

The common denominator for all Drupal modules/profiles/themes that integrate with external libraries.

This module introduces a common repository for libraries in sites/all/libraries resp. sites/<domain>/libraries for contributed modules.

External libraries
Denotes libraries ("plugins") that are neither shipped nor packaged with a project on drupal.org. We do not want to host third-party libraries on drupal.org for a multitude of reasons, starting with licensing, proceeding to different release cycles, and not necessarily ending with fatal errors due to conflicts of having the same library installed in multiple versions.

Drupal 7 only has built-in support for non-external libraries via hook_library(). But it is only suitable for drupal.org projects that bundle their own library; i.e., the module author is the creator and vendor of the library. Libraries API should be used for externally developed and distributed libraries. A simple example would be a third-party jQuery plugin.


Entity API

This module extends the entity API of Drupal core in order to provide a unified way to deal with entities and their properties. Additionally, it provides an entity CRUD controller, which helps simplifying the creation of new entity types.


  • Drupal 7.2 or later; suggested Drupal >= 7.15


You can find documentation in the handbooks. Also check the README and the provided API docs in entity.api.php.


For site-builders

This is an API module, so it doesn't provide any end-user features. However, it provides some entity generic functionality to other modules that site-builders may leverage:

  • A Views display plugin and field to render or link to any entity (by view-mode)
  • A CTools content plugin to render any entity (by view-mode)


jQuery Update

Upgrades the version of jQuery in Drupal core to a newer version of jQuery.



You need Views if

  • You like the default front page view, but you find you want to sort it differently.
  • You like the default taxonomy/term view, but you find you want to sort it differently; for example, alphabetically.
  • You use /tracker, but you want to restrict it to posts of a certain type.
  • You like the idea of the 'article' module, but it doesn't display articles the way you like.
  • You want a way to display a block with the 5 most recent posts of some particular type.
  • You want to provide 'unread forum posts'.


Chaos tool suite (ctools)

This suite is primarily a set of APIs and tools to improve the developer experience. It also contains a module called the Page Manager whose job is to manage pages. In particular it manages panel pages, but as it grows it will be able to manage far more than just Panels.

For the moment, it includes the following tools:

  • Plugins -- tools to make it easy for modules to let other modules implement plugins from .inc files.
  • Exportables -- tools to make it easier for modules to have objects that live in database or live in code, such as 'default views'.
  • AJAX responder -- tools to make it easier for the server to handle AJAX requests and tell the client what to do with them.
  • Form tools -- tools to make it easier for forms to deal with AJAX.
  • Object caching -- tool to make it easier to edit an object across multiple page requests and cache the editing work.
  • Contexts -- the notion of wrapping objects in a unified wrapper and providing an API to create and accept these contexts as input.
  • Modal dialog -- tool to make it simple to put a form in a modal dialog.
  • Dependent -- a simple form widget to make form items appear and disappear based upon the selections in another item.
  • Content -- pluggable content types used as panes in Panels and other modules like Dashboard.



A model of how token works

Tokens are small bits of text that can be placed into larger documents via simple placeholders, like %site-name or [user]. The Token module provides a central API for modules to use these tokens, and expose their own token values.

Note that Token module doesn't provide any visible functions to the user on its own, it just provides token handling services for other modules.


Google Analytics

Google Analytics for Drupal configuration page

Adds the Google Analytics web statistics tracking system to your website.

The module allows you to add the following statistics features to your site:

  • Single/multi/cross domain tracking
  • Selectively track/exclude certain users, roles and pages
  • Monitor what type of links are tracked (downloads, outgoing and mailto)
  • Monitor what files are downloaded from your pages
  • Custom dimensions and metrics support with tokens
  • Custom code snippets
  • Site Search support
  • AdSense support
  • Demographics and Interests support (formerly known as DoubleClick remarketing support)
  • Anonymize visitors IP address
  • DoNotTrack support (non-cached content only)
  • Drupal messages tracking
  • Modal dialog tracking (Colorbox)
  • Access denied (403) and Page not found (404) tracking
  • Cache the Google Analytics code on your local server for improved page loading times
  • Enhanced Link Attribution support
  • User ID tracking across devices
  • Changing URL fragments can be tracked as pageviews
  • Debug mode with analytics_debug.js



Allows the use of client-side editors to edit content. It simplifies the installation and integration of the editor of your choice. This module replaces all other editor integration modules. No other Drupal module is required.

The Wysiwyg module supports any kind of client-side editor including HTML editors (a.k.a. WYSIWYG), pseudo-editors (buttons to insert markup into a textarea), or even Flash-based applications. The editor library must be downloaded separately. Various editors are supported (see below).

The Wysiwyg module also provides an abstraction layer for other Drupal modules to integrate with any editor. This means that other Drupal modules can expose content-editing functionality, regardless of which editor you have installed.

Discussions happen in the Wysiwyg group, and in IRC #drupal-wysiwyg.




The Pathauto module automatically generates URL/path aliases for various kinds of content (nodes, taxonomy terms, users) without requiring the user to manually specify the path alias. This allows you to have URL aliases like /category/my-node-title instead of /node/123. The aliases are based upon a "pattern" system that uses tokens which the administrator can change.



Backup and Migrate

Back up and restore your Drupal MySQL database, code, and files or migrate a site between environments. Backup and Migrate supports gzip, bzip and zip compression as well as automatic scheduled backups.

With Backup and Migrate you can dump some or all of your database tables to a file download or save to a file on the server or offsite, and to restore from an uploaded or previously saved database dump. You can choose which tables and what data to backup and cache data is excluded by default.


Module Filter

The modules list page can become quite big when dealing with a fairly large site or even just a dev site meant for testing new and various modules being considered. What this module aims to accomplish is the ability to quickly find the module you are looking for without having to rely on the browsers search feature which more times than not shows you the module name in the 'Required by' or 'Depends on' sections of the various modules or even some other location on the page like a menu item.


XML sitemap

The XML sitemap module creates a sitemap that conforms to the sitemaps.org specification. This helps search engines to more intelligently crawl a website and keep their results up to date. The sitemap created by the module can be automatically submitted to Ask, Google, Bing (formerly Windows Live Search), and Yahoo! search engines. The module also comes with several submodules that can add sitemap links for content, menu items, taxonomy terms, and user profiles.

Please read the included README.txt, the handbook documentation, and the current list of known issues for more information before using the module.


Views Slideshow

Views Slideshow can be used to create a slideshow of any content (not just images) that can appear in a View. Powered by jQuery, it is heavily customizable: you may choose slideshow settings for each View you create.

Potential uses

  • News item slideshow (such as the title, image and teaser of the last 5 news articles submitted)
  • The Last X number of X submitted (images, videos, blog entries, forum posts, comments, testimonials, etc.).
  • Rotate any image, based on any filters you can apply in views.
  • Hottest new products for any ecommerce drupal site.
  • Rotate contact links, share links, etc.
  • Heck, you could rotate entire nodes, categories, image galleries, etc. I wouldn't suggest it, but you have that power.
  • Its also a great space saver. Places where you had multiple images or multiple items such as RSS feeds or category listings can now be presented in a slideshow.

The possibilities are really endless, as the more ways you can think of to categorize and add to views, the more you can rotate.

Views Slideshow Installation and Configuration



    Transliteration of upload filenames

    Provides one-way string transliteration (romanization) and cleans file names during upload by replacing unwanted characters.

    Generally spoken, it takes Unicode text and tries to represent it in US-ASCII characters (universally displayable, unaccented characters) by attempting to transliterate the pronunciation expressed by the text in some other writing system to Roman letters.


    Administration menu

    Administration menu (back-end) for Drupal

    Provides a theme-independent administration interface (aka. navigation, back-end). It's a helper for novice users coming from other CMS, a time-saver for site administrators, and useful for developers and site builders.

    Administrative links are displayed in a CSS/JS-based menu at the top on all pages of your site. It not only contains regular menu items — tasks and actions are also included, enabling fast access to any administrative resource your Drupal site provides.


    Entity reference

    Provides a field type that can reference arbitrary entities:

    • A generic entity reference field
    • Four widgets:
      • Two implemented on top of the Options module (Select and Radios/Checkboxes),
      • Two autocomplete widgets (one with one text field per entry, one tag-style with comma-separated entries in the same text field)
    • Two formatters:
      • A "Label" formatter, with optional link that displays the label of the referenced entity (the node title, the user name, etc.)
      • A "Rendered entity" formatter, that renders the references entity using a configurable view mode
    • Integration with Views (for both forward and backward references)
    • Integration with Entity Metadata (and as a consequence with Search API and the like)
    • Integration with Devel generate
    • Integration with Feeds and Migrate (>= 2.3) for painless data import

    This modules depends on Entity API and CTools.

    Modules extending Entity reference functionality:


    Views Bulk Operations (VBO)

    Views Bulk Operations (VBO)

    This module augments Views by allowing bulk operations to be executed on the displayed rows. It does so by showing a checkbox in front of each node, and adding a select box containing operations that can be applied. Drupal Core or Rules actions can be used.

    7.x-3.x requires Entity API.



    • Views 7.x-3.x works with VBO 7.x-3.x
    • Views 6.x-2.x works with VBO 6.x-1.x
    • Views 6.x-3.x works with VBO 6.x-1.10 and above
    • VBO 6.x-3.x is obsolete




    Webform Screenshot

    Webform is the module for making forms and surveys in Drupal. After a submission, users may be sent an e-mail "receipt" as well as sending a notification to administrators. Results can be exported into Excel or other spreadsheet applications. Webform also provides some basic statistical review and has an extensive API for expanding its features.


    Field Group


    Fieldgroup will, as the name implies, group fields together. All fieldable entities will have the possibility to add groups to wrap their fields together. Fieldgroup comes with default HTML wrappers like vertical tabs, horizontal tabs, accordions, fieldsets or div wrappers.



    Date Popup module

    This package contains both a flexible date/time field type Date field and a Date API that other modules can use.

    The D5 and D6 versions of the Date field require the Content Construction Kit (CCK) module. The D7 version works with the core Field functionality.
    D8 includes Date in core.

    The Drupal Handbook pages are at Date/Calendar Documentation.

    Be sure to read Debugging Information before reporting a problem. Going through those steps may resolve your problems and will help provide enough information to tell if this is a bug.



    IMCE Screenshot

    IMCE is an image/file uploader and browser that supports personal directories and quota.


    Localization update

    Localization update - Translation updates page

    Automatically downloads and updates your translations by fetching them from localize.drupal.org or any other Localization server.



    Variable module provides a registry for meta-data about Drupal variables and some extended Variable API and administration interface.

    This is an API module so it must be installed only when other modules require it.

    Module Developers: Please declare your variables.

    Add-ons for module developers here: Variable Extra

    This is a nice introduction to the module by Lullabot, Module Monday: Variable.


    • So other modules can know about your module's variables and they can be translated, exported, used in views, etc.
    • You'll get automatic variable edit forms, tokens, access control and uninstall for free
    • Your module's variables will be allowed for Variable Realms being able to get values for each language (Internationalization) or Domain (Variable Domain)


    Global Redirect

    Global Redirect


    GlobalRedirect is a simple module which…

    1. Checks the current URL for an alias and does a 301 redirect to it if it is not being used.
    2. Checks the current URL for a trailing slash, removes it if present and repeats check 1 with the new request.
    3. Checks if the current URL is the same as the site_frontpage and redirects to the frontpage if there is a match.
    4. Checks if the Clean URLs feature is enabled and then checks the current URL is being accessed using the clean method rather than the 'unclean' method.
    5. Checks access to the URL. If the user does not have access to the path, then no redirects are done. This helps avoid exposing private aliased node's.
    6. Make sure the case of the URL being accessed is the same as the one set by the author/administrator. For example, if you set the alias "articles/cake-making" to node/123, then the user can access the alias with any combination of case.
    7. Most of the above options are configurable in the settings page. In Drupal 5 you can access this after enabling the globalredirect_admin module. In Drupal 6, the settings page is bundled into the module.




    Context allows you to manage contextual conditions and reactions for different portions of your site. You can think of each context as representing a "section" of your site. For each context, you can choose the conditions that trigger this context to be active and choose different aspects of Drupal that should react to this active context.

    Think of conditions as a set of rules that are checked during page load to see what context is active. Any reactions that are associated with active contexts are then fired.

    Other included modules