Module review: Some useful and recommended Drupal7 modules

Please note this is mostly a list of those contributed modules of interest to the analysis of Drupal7 presented by this site, and modules uses on this site; it is by no means complete. There is an emphasis on modules that help promote Don't Repeat Yourself (DRY) coding and content authoring, as well as educational and example modules. Some core modules are included, mostly just to emphasise dependencies; it is expected that you are already familiar with all Drupal7 core modules. The term 'module' is used interchangeably with 'project', although in fact some projects offer more than one module. For some modules there is a lot of additional useful information on pros and cons, problems, fixes, workarounds, reported (and unreported) issues, and there are lots of links to useful external information, such as tips on tutorials, screencast videos, community docs etc. I include some useful Drupal6-only modules for which I would like Drupal7 versions.

[module] Collapse Text

HOT TIP: this content is flagged as highly recommended !
5

I have an old (internal) Drupal6 site I use for tracking a software development project, including issue tracking. It often has long code listings, stack trace listings etc. that can become unwieldy and difficult to read. This module was the perfect solution. I now make nearly all code listing [collapsed] by default and it has made reading and organising this work far easier.

[module] Draggable Views

4

Very handy little module (except for lack of integration with Views Bulk Operations (VBO), a very popular request, see external links below).

[module] Nodequeue

4

Node queue used out-of-the-box does what it is intended to do very well, but that is not IMHO where it's real power sits; the best part of it is when using the 'API that allows other modules to define smart queues' such as for taxonomy smartqueues.

[module] Conditional Rules

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Rules List Conditions

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Rules Link

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Workflow

STUB: this content is flagged as a placeholder only, with minimal content.
0

It's important to note that:

You may use the Rules module or core's Trigger module to react to transitions and states.

[module] Views Bulk Operations (VBO)

HOT TIP: this content is flagged as highly recommended !
5

Absolutely marvellous, an incredible time-saver, and almost as lovely as Views itself; I install it and switch it on on nearly every site, it's a "No brainer", although the module is definitely quite brainy ! In addition to the external links here, there is a wealth of links to useful resources such screencasts on the project site.

[module] me aliases

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Menu Token

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Features Extra

HOT TIP: this content is flagged as highly recommended !
4

A very handy extension to Features, and becoming more robust. I've already found it useful on a few client's sites. I particularly like the ability to export Blocks.

[module] Strongarm

4

[module] Features

4

Q: Do I need Features if I am developing a Drupal site for my local soccer club's social calendar ?
A: Probably not.

Q: Do I need Features if I am a professional Drupal web developer/consultant ?
A: You need to take it to bed and sleep with it. Then have dreams or nightmares about it, depending on how lucky you are when you use it on a real project.

[module] Variable Extra

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Variable

0

[module] Multi-Step Registration

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Internationalization (a.k.a. i18n)

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Profile2

HOT TIP: this content is flagged as highly recommended !
4

If you are developing sites with complex user experience cases, you are going to need to know about this module sooner or later !

[module] BlazeMeter

TODO: this content is incomplete, unfinished, or under construction.
STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Theme developer

HOT TIP: this content is flagged as highly recommended !
4

Super (when it works).

To get the dependency version right this worked:
# drush dl simplehtmldom-7.x-1.12
# drush en simplehtmldom
# drush en devel_themer

The last step will download devel_themer and will see the simplehtmldom as forced above. Otherwise it will (at the time of writing) download simplehtmldom 7.x-2.1, which fails.

[module] simplehtmldom API

TODO: this content is incomplete, unfinished, or under construction.
STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Drupal for Firebug

TODO: this content is incomplete, unfinished, or under construction.
STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Views Calc

TODO: this content is incomplete, unfinished, or under construction.
0

On my list of interesting modules to try.

[module] Node clone tab

5

[module] TableField

TODO: this content is incomplete, unfinished, or under construction.
STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Jquery Colorpicker

HOT TIP: this content is flagged as highly recommended !
5

[module] Flag Plus

TODO: this content is incomplete, unfinished, or under construction.
HOT TIP: this content is flagged as highly recommended !
5

DEMOS

TODO

CREDITS

The Flag Plus module is developed by Webel IT Australia, specialists in PHP-driven Drupal CMS web engineering, UML, SysML, Java and XML. In addition to using Drupal CMS for developing clients' web sites, Webel has used Drupal CMS for many years to develop educational web sites promoting graphical software engineering with Unified Modeling Language (UML) and graphical systems engineering with Systems Modeling Language (SysML):

[module] M00: a template for contributed modules

HOT TIP: this content is flagged as highly recommended !
5

DEMOS

Public WWW users can only see some parts of the module in operation at this demonstration page, or choose 'm00' form the Navigation menu at http://drupal7demo.webel.com.au/module/m00. There are some various unthemed and themed stub pages with associated tabs and/or nested menu items.

[module] Tabs Tamer

TODO: this content is incomplete, unfinished, or under construction.
0

TODO review. Looks popular.

[module] Hide Contextual Links

TODO: this content is incomplete, unfinished, or under construction.
0

TODO test and rate.

[module] Custom Contextual Links

TODO: this content is incomplete, unfinished, or under construction.
0

On my TODO list for interesting modules to try.

[module] Ghost

4

Like OOE = Object Oriented Examples = One Of Each, the Ghost project demonstrates object-oriented page and form controllers for Drupal7, but it is not conceived as a graphical UML-friendly project, and does not endeavour to map the Drupal7 system (including blocks, menus, menu items, rendering etc.) into an object-oriented bridge API for Drupal7. Page and form controllers are just a small part of OOE.

[module] Context

4
This module review page serves as its own demo page. The context in this case is that the node type is 'module', and that the path is 'node/2288', in which case the reaction is to hide many of the theme's regions (including the right sidebar), and to include the 'Powered by Drupal' block and the 'Contributed module demos' menu block in the theme's 'featured' region (above this content area).

Move to any other page and you should see the theme layout return to normal.

[module] Apache Solr (Search Integration)

0

A review for the Drupal7 version is pending

This module was used by Webel IT Australia on a major Drupal6 site to implement in-document search for the Systems Engineering Goldminefor training organisation Project Performance International.

Because it requires the Solr server process to be running (in Java) this module is only of use on dedicated servers or virtual private servers, not on basic shared web hosting accounts.

[module] Entity Cache

STUB: this content is flagged as a placeholder only, with minimal content.
0

Self explanatory, only included here as a dependency.

[module] Display Suite

5

Only the Drupal7 7.x-2.x branch is assessed here.

The gist of the Display Suite (DS) is that you can change the layout (across all instances) of a chosen node content type or other entity type (like user, comment, taxonomy term, vocabulary) without having to use PHP theme template overrides.

For a demo please visit: Display Suite demo

There is some overlap with Panels, but in typical basic usage the major differences are that:

[module] Services Client

TODO: this content is incomplete, unfinished, or under construction.
0

[module] SOAP [Drupal6]

OBSOLETE: this content has been flagged as obsolete (out-of-date).
0

[module] SOAP Server

TODO: this content is incomplete, unfinished, or under construction.
0

[module] Taxonomy [core]

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Simplenews

5

Super module, does exactly as it says. For best results you need to get your hands dirty with CSS and/or the them template overrides, and check (using test mode) the newsletter on many email clients; composing for the web is not quite the same as composing for a emailed newsletter.

For an example Simplenews newsletter please visit: Seminar: "The GreenDesk® for Green Star® Office web application and the GreenBase® resources web portal".

[module] Rules

4

Qs and As

Q: I am developing a simple Drupal7 community web site for sharing my favourite recipes; do I need Rules ?
A: Probably not.


Q: I am professional Drupal7 developer/consultant; do I need to understand Rules and how to create new Event-Condition-Action (ECA) instances via the Rules interface and Rules elements using the Rules API in code ?
A: Definitely.

[module] Services [and REST Server]

4
This demonstration has been temporarily disabled. Readers are encouraged to install Services and follow the tutorial Testing Services with the node resource.

The example at Testing Services with the node resource has been implemented on this site with read-only functionality, so public WWW users can't do any harm. To perform a REST node resource GET on the node with id 1 with XML return format use:

[module] REST Server [Drupal6]

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] OAuth

TODO: this content is incomplete, unfinished, or under construction.
0

[module] Http Client

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Web service client

3
As of 20 Mar 2014 the example at Consume SOAP web service using Web service client and Rules works, however to understand it one needs to scroll down past the general How outline section (which does not fully explain how) to the more specific Instructions section.

[module] Field Collection Views

HOT TIP: this content is flagged as highly recommended !
5

Super, gives fine control over the display of field collection items in views results.

Used on this site for example in the more compact OOE UML diagrams table view to display selected sub-fields from the metadata of the UML Diagram field collection.

[module] Field group

HOT TIP: this content is flagged as highly recommended !
5

I consider this one of the most useful contributed modules in Drupal7. It's essential for getting control over display/screen real estate and the user experience (UX) when dealing with rich/complex structured data and content. I use it on every single Drupal site I've ever developed.

[module] Field collection

5

Absolutely super little module, especially when also used in combination with Field Collection Views.

Example

It is for example used on this site for the OOE tutorial module UML diagrams. Each UML diagram is a collection of some metadata about the image and the UML diagram image, and a UML content type node can have more than one UML diagram. See for example Demo.

[module] Lightbox2

4

Lightbox2 is used on this site on all UML diagram image fields of the Module content type, which one can also inspect via the OOE UML gallery.

One can also (given correct order and settings of text format input filters) use it inline in any page text like this:

[module] Panels

HOT TIP: this content is flagged as highly recommended !
5
TIP: when using Panels, always also turn on the Page manager
module within the Chaos tool suite (ctools).

Panels is massively powerful (although I do miss some of the simplicity of Composite Layout [Drupal6], which I used gladly on some Drupal6 sites). Panels is now far more stable that in the first years of Drupal7, and will clearly likely be supported at high priority in future versions of Drupal.

[module] Media: YouTube

TODO: this content is incomplete, unfinished, or under construction.
0
I am not currently using this module on this site, as one can use MediaFront with YouTube easily. Example: Video: YouTube example: The Drancing accelerometer music system: PureData/GEM + Wii Remote version {MediaFront}.

However, currently there is a problem inserting MediaFront videos into pages using Node Embed text filters (ISSUE: TEST: Node Embed fails with MediaElement and MediaFront), so this promise for Media: YouTube makes it attractive:

[module] Media

0
I am not currently using this module on this site.

For most of my video needs either MediaFront or Video: Demonstration of NetBeans IDE prompting on an OOE IMenuItem encapsulation of a Drupal menu item in object-oriented PHP {MediaElement} suffice.

[module] Composite Layout [Drupal6]

OBSOLETE: this content has been flagged as obsolete (out-of-date).
4

I made good of this excellent little module on many Drupal6 sites:

[module] MediaFront

4

If you just want to play a video in HTML5 across many devices, this module is massively more complex to setup and use than MediaElement, although it does come with comprehensive documentation, and it has an enormous range of options, including a very flexible custom presets system. Presets have a nice option to NOT show a player when there is no media (which is very useful if one is combining many different media fields in one content type).

[module] Resumable Download

HOT TIP: this content is flagged as highly recommended !
5

Helps address problems playing videos from private filesystem on some devices.

It is not strictly required by MediaFront, but it is recommended if you want your private filesystem videos to play on iPad and iPhone.

[module] MediaElement

HOT TIP: this content is flagged as highly recommended !
4

If you just want to play a video on Drupal7 across many devices (including iPad and iPhone) safely by either specifying a link to an existing video or by file upload to the public filesystem (so far), this is the easiest way. For an example please visit (on nearly any device): Video: Demonstration of NetBeans IDE prompting on an OOE IMenuItem encapsulation of a Drupal menu item in object-oriented PHP {MediaElement}.

[module] Better Exposed Filters

HOT TIP: this content is flagged as highly recommended !
5

Very handy little module, does indeed make exposed filters in views query reports easier in many cases. Is used for example on this site in the OOE: UML filter view.


From the README.TXT:

'In Views 3.x, the BEF configuration options have been moved to the Exposed Form dialog. Set the "Exposed form style" to "Better Exposed Filters" and make your configuration changes in the resulting dialog. Each filter is listed based on the label given in the exposed filter dialog.'

[module] Drush [command line admin and scripting]

4

Drush is mostly intended for use on dedicated servers or virtual private server partitions (VPS):

[module] Coder Tough Love

TODO: this content is incomplete, unfinished, or under construction.
STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Coder

3

Also from Code Sniffer:

Coder Sniffer is a part of coder (7.x-2.x branch) and a tool to help write code for Drupal or its modules.
The project provides a coding standard for PEAR's PHP_CodeSniffer based on the Drupal Coding Standard.

[module] Nodewords: D6 Meta Tags [DEPRECATED for D7]

0
For Drupal7 see instead Metatag.

[module] Metatag

HOT TIP: this content is flagged as highly recommended !
4

The topic of Search Engine Optimisation (SEO) is tricky, complex, and subtle. Metatag provides a sensible minimal Global defaults set under /admin/config/search/metatags and one can easily add more. Simply installing it and switching it on will already help your SEO, even before any fine tuning.

[module] Image CAPTCHA Refresh

HOT TIP: this content is flagged as highly recommended !
5

Highly recommended if you don't want to annoy your audience when you have your Image CAPTCHA noisy enough to prevent modern automated attacks.

[module] CAPTCHA

HOT TIP: this content is flagged as highly recommended !
5

A no-brainer, install it, switch it on, and configure it to use Image Captcha (mostly). Easily the easiest of the spam and login protection modules (although its own project page has links to many other similar modules).

If you don't want to annoy your audience when you have your Image CAPTCHA noisy enough to prevent modern automated attacks, I highly recommend you also install Image CAPTCHA Refresh so users can reload and refresh overly difficult challenges.

[module] Options Element

TODO: this content is incomplete, unfinished, or under construction.
STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Model Entities

TODO: this content is incomplete, unfinished, or under construction.
STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Entity Construction Kit (ECK)

TODO: this content is incomplete, unfinished, or under construction.
0

I have not yet needed to use this Drupal7-spin on the old Drupal6 Content Construction Kit (CCK), because there is already so much one can do with the FIeld API and custom type editing system in Drupal7.

[module] Webform Validation

HOT TIP: this content is flagged as highly recommended !
5

Basically essential if you want to have tidy results from your [node/1714]s.

For tips on regular expressions, see the links under Field validation.

[module] Webform

HOT TIP: this content is flagged as highly recommended !
5

Super ! And has 1,747,939 million downloads as of Feb 2014. One of the most useful modules in Drupal.

[module] Field API (core)

4

I don't usually report on core module here, but this one is essential. If you are going to work with Drupal7 you must understand the differences between the old Drupal6 Content Construction Kit (CCK) contributed module and the new Field API in core.

[module] Entity API

4

The move from the Drupal6 terminology 'content types' and CCK contruction kit to 'Entity' and 'Field' is more in line with Java Persistence API (JPA) database terminology and most other database persistence frameworks. This unifies the different sub-types like Node, User, etc under a universal base type Entity, which is a very good thing.

[module] Email Field

5

No brainer; install and switch on always. Likely moving to core for Drupal8.

[module] Field validation

HOT TIP: this content is flagged as highly recommended !
0

The essential module for serious data entry control ! Although there are lots of other options for validation, and plenty of out-of-the-box validation solutions (as well as field type modules like Link that already validate for you) you had better be on top of regular expressions to get the most out of this for complex cases.

To get a quick start watch this video: Drupal Field Validation using Regular Expressions.

[module] Pathauto

3

Although it's extremely well known and recommended by the SEO Checklist, I have officially gone off it.

[module] Front page

TODO: this content is incomplete, unfinished, or under construction.
3

I haven't tried the Drupal7 version of this module, but when I tried to combine front 6.x-2.0-rc1 with Node Embed - noting that it is supposed to work with whatever input filter (text format) once chooses, I got a complete mess. So for now I am rating it down. I have not yet reported my problems as issues on Drupal.org.

The basic idea is good.

[module] Site verify

0

[module] XML sitemap

HOT TIP: this content is flagged as highly recommended !
5

Super module for Search Engine Optimisation (SEO) !

[module] SEO Checklist

5

[module] Google Analytics

HOT TIP: this content is flagged as highly recommended !
5

An absolute must have module for any site where traffic volume matters !

[module] Link checker

HOT TIP: this content is flagged as highly recommended !
5

Super ! A must for every site.

[module] Advanced Book Blocks [Drupal6 + D7sandbox]

3

Nice module, has proved very useful on some client's Drupal6 sites. There are times when you need to be able to separate your books into different groups according to topic or purpose (without having to resort to contrived menus repeating the book structure "by hand"), and this module solves the problem well.

[module] JQuery menu

4

A good choice for better menu interaction, but be careful on very large sites because it loads the entire menu structure on every page load.

[module] Node clone

HOT TIP: this content is flagged as highly recommended !
5

Brilliant ! Install it on every single site. And despite the caveats about field cloning, I've found it mostly very reliable.

[module] Flag

HOT TIP: this content is flagged as highly recommended !
5

One of my all-time favourite modules, I install it on every site. It enables one to: impose a workflow on content; mark and track nodes has having errors; mark content as archival or obsolete; create TODO lists. The possibilities are nearly endless.

Best of all, it integrates with Views, so you can easily list nodes flagged by a given flag. Very handy.

[module] Page Title

HOT TIP: this content is flagged as highly recommended !
4

Very handy little module that enables one to include dynamic/parametric content into the page title that appears at the top of the browser bar. I have used this on a number of client's sites to achieve the desired presence where the default Drupal page title did not quite please.

[module] Token

0

[module] Submitted By

4

A handy little module that can (often) save you the trouble of having to fiddle with the 'submitted by' metadata in a theme's node template.

If it isn't enough, see How to Control/Modify Display Settings (Author and Date Information) on Posts.

[module] Date

4

An essential module, with some major improvements in the Drupal7 version.

[module] Node Convert

HOT TIP: this content is flagged as highly recommended !
4

Super module, a life-saver for many situations.

However, the conversions for Drupal7 with the core Entity/Field system are not quite stable yet, expect some information loss sometimes.

[module] Cache Expiration

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Boost

HOT TIP: this content is flagged as highly recommended !
5

If you have a large amount of anonymous traffic to your site this module can definitely help reduce load, especially on shared servers. Best used where content is not changing rapidly.

[module] HTML Purifier

5

[module] GeSHi Filter for syntax highlighting

HOT TIP: this content is flagged as highly recommended !
5

This absolutely brilliant server-side code syntax highlighting module is quite simply a MUST HAVE for any IT Educator or anybody wanting to share their coding tips via a Drupal site. It is far more powerful and flexible than Code Filter. It also enables one to have syntax highlighted code fields by enabling a separate optional module, and there are options for automatic code line number generation.

[module] Code Filter

4

From the Code Filter handbook:

'The Code Filter is enabled on Drupal.org for input formats Filtered HTML, Full HTML, and Documentation.'

It provides coloured syntax highlighting for PHP code.

I however prefer the [node:] which handles more languages and has easy configuration of language specific tags.

[module] Views PHP

TODO: this content is incomplete, unfinished, or under construction.
0

There is a lot of overlap with Computed Field (which is easier if your focus is on generating content for fields, rather than Views support).

[module] Computed Field

HOT TIP: this content is flagged as highly recommended !
5

Very, very handy.

Can also be used to create "static" text fields, and thus helps promote Don't Repeat Yourself (DRY Principle) content authoring !

[module] Insert Node [Drupal6]

0

This is an extremely powerful input filter with a huge number of options and applications, but if you just want to insert the content of one node into another Node Embed suffices, and has a Drupal7 version.

[module] Node Embed

HOT TIP: this content is flagged as highly recommended !
4

Absolutely brilliantly simple must have module. Install it always and switch it on. Promotes Don't Repeat Yourself (DRY Principle) authoring !

The Drupal7 version includes many improvements, including options for the display mode for the inserted node (such as view_mode=teaser).

It currently however only gets 4 stars out of 5, because it suffers from a number of bugs, or at least has trouble handling some trickier cases; see ISSUE links below.

[module] lm_paypal

HOT TIP: this content is flagged as highly recommended !
4

At the time of writing (11 Feb 2014) there is a Drupal7 development version 7.x-1.x-dev from 2013-Sep-30.

The admin settings are easy enough (you need a PayPal Business or Premium account and the associated email address) and it offers advanced help but some of the links in the advanced help pages are broken.

The example blocks are easily adapted to your needs, however it doesn't seem to accept input format markup in the description blurb field.

[module] UC Variable Price

0

[module] Commerce Options Field

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] CRM Core

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] CRM Core Donation

STUB: this content is flagged as a placeholder only, with minimal content.
0

[module] Commerce Examples

0

[module] Commerce Customizable Products

TODO: this content is incomplete, unfinished, or under construction.
0

[module] Commerce Custom Line Items (Types) [DEPRECATED]

STUB: this content is flagged as a placeholder only, with minimal content.
0
Deprecated: only included because of dependencies.

[module] Drupal Commerce

4

This very popular eCommerce module is the main "competitor" of Ubercart and is growing rapidly in popularity and in extensions support. Some of the developers behind them have worked on both projects, and one could argue that they meet slightly different needs.

[module] Ubercart Donation Products [Drupal6]

STUB: this content is flagged as a placeholder only, with minimal content.
0
It is not clear whether this will be updated to Drupal7 or whether there is another module that performs the same role for Ubercart.

[module] Ubercart

HOT TIP: this content is flagged as highly recommended !
5

This is a popular module that integrates well with Drupal custom content types and fields, so you can get started quickly creating products. It has a complete store and product configuration system integrated into the main admin menu. And it talks to most of the major payment gateways.

[module] Paypal Donation

TODO: this content is incomplete, unfinished, or under construction.
0

Seems to have enough installs to be worth trying.

11 Feb 2014: Although it claims to be actively maintained, the links to the documentation and the demonstration are broken !

[module] Commerce donate

TODO: this content is incomplete, unfinished, or under construction.
0

On my list of modules to try out.

[module] Select (or other)

HOT TIP: this content is flagged as highly recommended !
5

An extremely useful little module ! Solves the problem of not being able to preempt every possible answer in a form (in cases where autocomplete widgets with free-tagging of are not suitable).

[module] Views Slideshow

HOT TIP: this content is flagged as highly recommended !
5

Perhaps the best known of the many slideshow/rotator modules.

See an example of 2 ViewsSlideshows running in parallel on one page at the Webel IT Australia: Drupal services zone, showing a portfolio of Drupal sites with rotating screenshots and descriptions.

[module] Image (Drupal7/8 core)

TODO: this content is incomplete, unfinished, or under construction.
0
Does not seem to work with SVG yet, which is a great shame for the OOE graphical UML diagrams. You can add 'svg' under an image field allowed upload settings, but it is ignored.

[module] Image (old contributed, Drupal6)

0

OBSOLETE!

[module] Insert View

TODO: this content is incomplete, unfinished, or under construction.
HOT TIP: this content is flagged as highly recommended !
4

Very useful little module, used for example on this site to insert the reusable notes view into an introduction page on reusable notes for UML modelling policies and conventions.

[module] Book made simple

HOT TIP: this content is flagged as highly recommended !
4

A gotcha, in case your indeed useful Outline tab is missing from your node pages:

Version 3 updates

- A new permision "Show (checked) or hide (unchecked) outline section in form elements" have been added

..

It is strongly encouraged to hide Outline tab, because it is simplier to modify book list in form element.

I instead strongly recommend you do not hide the Outline tab because I find it usually much simpler !

[module] Grammar Parser Library [bridge]

4

Solves the problem installing Grammar Parser [library module] as required for API [documentation extraction system] because of muddy install instructions and confusing module names. Otherwise you will simply get something like:

API 7.x-1.6 Generates and displays API documentation pages.

Requires: Node (enabled), Chaos tools (enabled), Gclib(missing), Libraries (enabled), Views (enabled)

With this module enabled you will get:

[module] Grammar Parser [library module]

4
The install instructions for getting the Grammar Parser library seen as required by the API [documentation extraction system] module are as clear as mud and the module names are confusing.

[module] Libraries API

0

[module] API [documentation extraction system]

HOT TIP: this content is flagged as highly recommended !
5
Getting the Grammar Parser library installed and seen by the system can be tricky. For instructions on compatible versions please visit Grammar Parser Library [bridge].

The API documentation extraction module is used on this site for the OOE API documentation for the OOE = Object Oriented Examples = One Of Each object-oriented tutorial module.

[module] Active menus

3

I used to use this a bit with Drupal6, however for version Activemenu 7.x-2.x-dev (2013-Sep-30) against Drupal7 I get an error:

[module] DHTML Menu

2

As far as I can tell, DHTML still loads behind the scenes each entire menu it is applied to, so it does not seem to have any performance advantage over JQuery menu (which has the advantage that it combines with Advanced Book Blocks, and it is far more configurable per menu, making JQuery Menu my current winner and is used throughout this site). By comparison, Active menus performs AJAX interrogation of the children of a parent menu item on opening, which in principle makes it more efficient when very large menus are involved.

[module] Menu block

HOT TIP: this content is flagged as highly recommended !
5

Another "no brainer". Install it and enable it on every site.

[module] Menu position

0

[module] Devel

HOT TIP: this content is flagged as highly recommended !
5

An absolute must for all serious Drupal developers !

[module] Page Controller

4

Already a very useful little module leveraged by many menu item examples in OOE = Object Oriented Examples = One Of Each, but it could be expanded to include more flexible construction through say factories, instead of assuming a noargs constructor for the eventual callback handler (page controller implementation).

[module] Chaos tool suite (ctools)

5

[module] Link

5

No brainer; this is the web, the web uses links. Install it on every site and switch it on first.

[module] Views

HOT TIP: this content is flagged as highly recommended !
5

Quite simply, the most important contributed module in Drupal6/7 !

The Views module moves into core for Drupal8.

[module] Empty fields

0

[module] Voting API

0

[module] Fivestar

5

For pure simplicity and utility you've gotta give it 5 stars !

[module] Content Templates (Contemplate)

4

Excellent also for creating node-based PHP content in Dynamic Field [Drupal6].

[module] Dynamic Field [Drupal6]

4

Very handy. Can also be used to create "static" text fields ! But not yet for Drupal7 !. For a Drupal7 compatible equivalent, see instead Computed Field.

[module] Static field

5

This module is a very handy little addition for Drupal7.


For Drupal6 one can use Dynamic Field [Drupal6], which can also be used of course for static text:

[module] Rep[lacement]Tags [Drupal6]

HOT TIP: this content is flagged as highly recommended !
5

As far as consistent authoring is concerned, I consider this one of the handiest modules in Drupal, because it promotes the Don't Repeat Yourself (DRY Principle) pattern and helps prevent the Write Everything Twice (WET) (because "we enjoy typing") anti-pattern.

[module] Link Node

HOT TIP: this content is flagged as highly recommended !
5

I consider the simple yet wonderful Link Node one of the most important modules in Drupal, one you would do well to install and turn on in every single Drupal site, because it promotes the Don't Repeat Yourself (DRY Principle) pattern and helps prevent the Write Everything Twice (WET) (because "we enjoy typing") anti-pattern.

[module] X Autoload

HOT TIP: this content is flagged as highly recommended !
5

I consider this module important (indeed a "god-send" for OO fans), because it enables preparation of Drupal7 modules in anticipation of the class/namespace techniques required for Drupal8. It is used by the module OOE = Object Oriented Examples = One Of Each.

As of (at least) Jun 2014, X Autoload supports the following patterns:

D8-style PSR-4

[module] Current posts - module code for tutorial

4

The well-known tutorial Creating modules - a tutorial: Drupal 7.x is fine for a very first introduction, but I don't recommend that you code that way when you are working with the OOE system because the code does not respect the Don't Repeat Yourself (DRY Principle), it is far too Write Everything Twice (WET) (because "we enjoy typing").

[module] OOE = Object Oriented Examples = One Of Each

HOT TIP: this content is flagged as highly recommended !
5

The OOE module is the primary tutorial module for this demo site.