List of modules by importance

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
You are viewing a wiki page. You are welcome to join the group and then edit it. Be bold!

In the interest of discovering automatically which Drupal modules are the most important to know about, I compiled some statistics. I used a google-like method of quantifying importance: I counted the number of times each module was linked to in the descriptions of other modules (including sandbox projects). The data were gathered yesterday, 11/29/11 from drupal.org. Here is the top 200:

Rank Module Frequency
1 Views 265
2 Content Construction Kit (CCK) 145
3 Ubercart 118
4 Drupal Commerce 117
5 Webform 94
6 Feeds 87
7 Rules 82
8 Embedded Media Field 81
9 Libraries API 78
9 Chaos tool suite (ctools) 78
11 Token 75
12 Features 72
13 Context 62
14 ImageCache 60
15 Media 58
16 Services 56
17 Wysiwyg 53
17 Organic groups 53
17 jQuery Update 53
20 ImageField 50
21 Drush 49
21 Domain Access 49
23 FileField 45
23 Apache Solr Search Integration 45
25 Search API 44
25 Panels 44
27 Date 39
28 jQuery UI 38
29 e-Commerce 35
30 Entity API 33
31 Pathauto 32
31 Image 32
33 Views Bulk Operations (VBO) 31
34 Location 30
35 Flag 29
36 OpenLayers 26
36 FeedAPI 26
38 User Points 24
38 Display suite 24
40 Voting API 22
40 SMS Framework 22
40 Link 22
43 Workflow 21
44 Internationalization 20
44 Devel 20
44 Content Profile 20
47 Simplenews 19
47 Signup 19
47 Notifications 19
50 Relation 18
50 Migrate 18
50 Debut 18
50 CAPTCHA 18
54 Quiz 17
54 Nodequeue 17
54 Lightbox2 17
57 Gallery Assist 16
57 Content Access 16
59 Node Gallery 15
59 Search Lucene API 15
59 GMap Module 15
62 Views Slideshow 14
62 Privatemsg 14
62 Pay 14
62 Menu block 14
62 jCarousel 14
62 Insert 14
62 Feed Element Mapper 14
62 Administration menu 14
62 ACL 14
71 Twitter 13
71 Support Ticketing System 13
71 SOAP Client 13
71 References 13
71 Nodewords 13
71 Modal Frame API 13
71 FileField Sources 13
71 Case Tracker 13
71 Admin 13
80 Version Control API 12
80 User Relationships 12
80 Media Mover 12
80 Field group 12
80 Boxes 12
80 Bibliography Module 12
86 Universally Unique IDentifier 11
86 Taxonomy Access Control 11
86 Strongarm 11
86 Project 11
86 Profile 2 11
86 Messaging 11
86 ImageAPI 11
86 Diff 11
86 Commerce Shipping 11
86 Coder 11
86 Advertisement 11
97 Transliteration 10
97 Thickbox 10
97 OAuth 10
97 jQ 10
97 IMCE 10
97 Fivestar 10
97 Drupal for Facebook 10
97 Facet API 10
97 Facebook-style Statuses (Microblog) 10
97 E-mail Marketing Framework 10
97 Email Field 10
97 Deployment 10
97 Content Taxonomy 10
97 Browscap 10
97 Bot 10
97 Boost 10
97 Bad judgement 10
114 ThemeKey 9
114 Taxonomy menu 9
114 Salesforce Suite 9
114 Resource Description Framework (RDF) 9
114 QueryPath 9
114 Mailhandler 9
114 Hierarchical Select 9
114 Google Analytics 9
114 Geofield 9
114 Faceted Search 9
114 Country Icons 9
114 Colorbox 9
114 CKEditor - WYSIWYG HTML editor 9
114 Google chart API 9
114 CDN 9
114 Auto Assign Role 9
114 Activity Stream 9
131 Yahoo YUI 8
131 XML sitemap 8
131 Vote Up/Down 8
131 UC Recurring Payments and Subscriptions 8
131 Scheduler 8
131 Node import 8
131 Mobile Tools 8
131 Mime Mail 8
131 LDAP integration 8
131 Lightweight Directory Access Protocol 8
131 Instant Operating System 8
131 Invite 8
131 Geo 8
131 FileField Paths 8
131 Feeds XPath Parser 8
131 Event 8
131 Drush Make 8
131 Drupal Queue 8
131 Backup and Migrate 8
131 Autoload 8
131 Utilities 8
131 Advanced help 8
131 Advanced CSS/JS Aggregation 8
154 Views Bonus Pack 7
154 Taxonomy Image 7
154 Taxonomy Access Control Lite 7
154 Tabs (jQuery UI tabs) 7
154 Storm 7
154 Spaces 7
154 Shadowbox 7
154 Service links 7
154 Printer, e-mail and PDF versions 7
154 Prepopulate 7
154 Popups API (Ajax Dialogs) 7
154 Piwik Web analytics 7
154 Page Title 7
154 OpenCalais 7
154 Node clone 7
154 Nodeaccess 7
154 MERCI (Manage Equipment Reservations, Checkout and Inventory) 7
154 Memcache API and Integration 7
154 Kit 7
154 GeSHi Filter for syntax highlighting 7
154 FriendList 7
154 Facebook Connect 7
154 DraggableViews 7
154 Bbcode 7
154 Actions 7
179 Zend Framework 6
179 VoIP Drupal 6
179 Views Datasource 6
179 Video 6
179 Vertical Tabs 6
179 Usernode 6
179 Twitter Pull 6
179 Table Wizard 6
179 TinyMCE 6
179 Spam 6
179 Secure Pages 6
179 Revisioning 6
179 RealName 6
179 Project issue tracking 6
179 Profile Privacy 6
179 Node access user reference 6
179 Nice Menus 6
179 Derivatives API 6
179 Magento 6
179 Linkit 6
179 Keyword Research 6
179 Javascript Tools 6
179 Job queue 6

Some links were uncounted, due to limitations of the data set.

Neal

Comments

I fixed the ranks so that

NealB's picture

I fixed the ranks so that modules with the same frequencies now have the same rank. I also expanded it to the top 200 (actually, 201).

Can you produce a D7 specific list?

rhuffstedtler's picture

I think it would be interesting to see a list filtered for only those modules that have a stable release relevant to D7. Would you be willing to run that analysis?

D7 list

fejn's picture

CCK is 2nd on the list, but how many sites still use it(I don't know -- I only use D7). Its replacement, Fields gets installed every time you load a core distribution, so CCK rather than Fields appears on the list. Would it be possible to get a list of modules ranked by how many sites actually USE the modules? (That might put Forum and Blog further down in the list as you get them for "free", but based on my own experience, they are often not enabled).

Kudos for putting this together as a basis for further discussion!!

this is really cool what

value's picture

this is really cool what about adding some logic that would check for generalized or specialized use? looking for anything that is really usage specific like the E-commerce modules or at least classify them.

Webform is a lot more important to the all sites than Ubercart or Drupal Commerce is. or add this into a View with exposed filters on an actual Drupal install so people could see the info that applies to their cases?

Maybe add what modules are commonly found together as well?

Just some thoughts, this is some awesome info you compiled either way :D

Editors

fejn's picture

Example of modules used together: (Wysiwyg (17) and IMCE (97) ). One way to attack this might be to look for dependencies: it seems as though an awful lot is dependent on CTools...

_

shamio's picture

However these modules are really important and most websites use some of them, i think the best way to list importance of modules is using the statistics about usage of them or ratio : number of download time/number of websites use them.
And these information can be found in the page of each module on drupal.org without need to use Google ;)

Doubt is the father of invention ... ZendegiyeSabz

Frequency

pcher1bw's picture

I agree with shamio. In this you should be using the download/use records.

Now, how does Views that requires chaos tools to be installed prior to installation rank higher than chaos tools?

Is it possible to do this once on D6 and once on D7, it will be different but it is important to both.

Paul Chernick
CEO
Chernick Consulting
(310) 569-2517

D7

fejn's picture

It seems that the critical item for D7 vs. D6 will be accurately counting all the modules that get downloaded as part of core appropriately: The most obvious case here is CCK/Fields. A solution to even part of this problem would help make a very strong module rating system, though.

Download/use

fejn's picture

I suspect that download/use may be somewhat misleading, as downloads just counts the number of times a module has been downloaded -- it may not have been used. Because of this, you might end up with an experimental module outranking Views in a situation like the following (numbers made up for illustration):

                                     Downloads                Used              Score

Experimental module 5 1 5.0
Views 500000 200000 2.5

So, as long as Higher = better for Score, the experimental module will still outrank Views. With a slight modification of shamio's system, you may have a useful tool for winnowing out less important modules

What do these numbers mean?

spade's picture

Out of 800.000+ Drupal sites, 265 use Views? I don't think so. What is the weigth of the score?

Frequency = # of references

fejn's picture

I think the frequency number you are looking at is the number of times other modules reference a given module in the module documentation: i.e., the 265 means that 265 other module descriptions reference Views in some way. Not perfect, but a pretty good indicator of how 'important' (tightly bound to the Drupal system) a module is.