Coding standards
The Drupal Coding Standards apply to code within Drupal and its contributed modules.
- Coding standards
- API documentation and comment standards
- API Documentation Samples
- CSS
- JavaScript
- Markdown coding standards
- Namespaces
- Naming standards for services and extending Symfony
- Object-oriented code
- PHP Exceptions
- PSR-4 namespaces and autoloading in Drupal 8
- Temporary placeholders and delimiters
- SQL
- Twig coding standards
- Use Drupal Unicode functions for strings
- Write E_ALL compliant code
- Drupal SimpleTest coding standards
- Drupal Markup Style Guide
- Configuration file coding standards
- Composer package naming conventions
User interface standards
User Interface standards for Drupal.
Security
Best practices for secure sites and code.
Drupal project issues
All about how the Drupal project uses "issues" to keep track of bugs and feature requests
Git version control system
How to install and use Git for version control in Drupal projects
Managing a drupal.org theme, module, or distribution project
Information on how to create and manage a module, theme, or distribution project hosted on drupal.org
Using Composer
Learn how to use Composer to manage Drupal projects and their dependencies.
- Using Composer in a Drupal project
- Composer in relation to Drush Make
- Using Composer to Install Drupal and Manage Dependencies
- Starting a Site Using Drupal Composer Project Templates
- Managing dependencies for a contributed project
- Managing dependencies for a custom project
- Preparing your site for Composer 2
- Troubleshooting Composer
- Using Drupal's Composer Scaffold
- Using Drupal's Lenient Composer Endpoint
- Using packages.drupal.org
Local server setup
Local server setup for Drupal.
- Linux development environments
- Mac OS development environment
- Windows development environments
- Virtual Machine development environments
- Docker development environments
- Copy and Run a Drupal Production Site on a USB Drive with USBWebserver
- Managing Mail Handling for Development or Testing
- Easy installation of a local development server using Drush and Aegir-up
- How to copy a site to another directory
- How to create a test site
Development tools
Commonly used tools to aid in Drupal development
- Development tools overview
- Editors and IDEs
- DrupalPod
- Running core development checks (>= 9.2.x)
- Cygwin or msysgit Command-Line Usage on Windows
- GNU Global setup for Drupal
- Set up your browser to make your work easy
- Tracking a Drupal distribution as a vendor branch in Subversion
- XDebug + Wincachegrind on Windows
- XHProf Code Profiler
- Xdebug debugger
- (deprected) using andLinux (for windows)
- (deprected) Dontbug: A reverse debugger for Drupal/PHP
Usability testing
Guidelines for conducting and recording usability tests and communicating their results. Also, the findings of previous tests.
Profiling Drupal
Benchmarking and profiling Drupal.
Decoupled Drupal
Provide content to decoupled front-ends that are responsible for presenting or displaying content.