When we start a Drupal project we find ourselves with an empty system, without the basic functionalities that we normally use. That is why every time we start a new project, we always include a series of modules that makes our life easier and help us to carry out all tasks. In this list, I will show you a list of modules (both core and contribs) that I consider essential in any Drupal installation.
In order to avoid chaos I have organized them by categories and each title has a link to the corresponding project in drupal.org
Essential modules:
- Media (Core) (Plugin that should be activated by default, raises the possibilities to infinity by giving us a new entity, reusable and scalable).
- Pathauto (Automatic configuration for friendly URLs).
- Redirect (/node/3 is redirected to its slug so we avoid non-friendly URLs).
- Admin toolbar (Admin menu more accessible).
- Simple block (Exportable blocks in YMLs).
- Field Group (Tabs for the Front of the site and the form display).
- Display Suite (Adds the Title component in the manage display and gives us a chance to select the output format (H1, H2, etc..).
- Block class (Add classes for blocks).
- Token (Used by thousand of modules, variables that contains dynamic information to be used anywhere).
- Paragraphs (What can we say about paragraphs?, used everywhere to make complex behaviours)
- Layout Builder styles (Add classes on the Layout Builder sections - Stable alternative: Layout Custom Section Classes & Attributes).
- Search API (Improve the search system and avoids killing the db with huge sites)
- Easy Breadcrumb (More flexible breadcrumbs).
- Eu Cookie compliance (Cookie compliance, nothing else).
- Conditional Fields (Let's avoid showing fields that are not always required in the form display)
Essential modules - Extra:
- Webform (Forms even for a simple contact)
- Commerce (Want to build a shop? this is your module.. )
- Add to Any (Share your node in social networks)
- Scheduler (Let's schedule our content to be published at a later date)
- Crop API + Image widget crop (Crop system easy to use for the editor with a click and select crop)
- Quick Node Clone (Easily clone any node)
- Select 2 or Chosen (Improved search with options to improve the editor experience).
Security:
- Automated Logout (Auto logout if the user is away for a specific time).
- Captcha + reCAPTCHA (Every form should use this module to avoid bots, in addition, we can use Honeypot).
- Antibot (Lightweight module that prevents the submission of the form for bots, really cool functionality behind with Javascript)
Essential themes:
- Gin (minimum stability = dev) (Best Admin theme for Drupal based on Claro)
- Gin Admin toolbar (Apply the Gin style for the Admin toolbar in the front theme)
- Gin Login (Best Login form theme)
- Gin Layout Builder (Apply Gin styles for Layout Builder - A little buggy).
Basic SEO:
- Simple XML sitemap (Structure of the site read by Search engines).
- Metatags ( Metatag fields so we can set the info read by the Social networks).
Advanced SEO
- Google Tag Manager
- Schema.org Metatag
- Real-time SEO for Drupal (Visual guidance for the editor to make the content a little bit better).
- SEO Checklist (Nice list to follow best practices).
Performance modules
-
Advanced CSS/JS Aggregation (Better caché and compression system, etc..).
Development modules
- Stage file proxy (No more local files, set the origin environment, and voilá the files are loaded).
- Config Ignore (Ignore configuration so we can modify it in any environment without losing them in the config import).
- Config Split (Configuration by Environment).
- Devel
- Structure sync (Export the content of menus, taxonomies, etc.. ).