The plugin is an enhancement for Drupal development experience inside PHPStorm. It provides various features such as autocompletion, type resolvers (entities, fields, etc), references, and more!
Project links:
https://plugins.jetbrains.com/plugin/23474-drupal-extend
https://github.com/nvelychenko/drupal-extend
https://www.drupal.org/project/drupal_extend_phpstorm_plugin
Goals:
The primary goal of this project is to enhance the integration between PhpStorm, a popular Integrated Development Environment (IDE) for PHP, and Drupal, a widely used content management system (CMS). The project aims to improve the development experience for both new and experienced developers working with Drupal projects by providing advanced autocomplete features, type providers, and other helpful functionalities directly within PhpStorm.
Requirements:
Autocomplete for Various Drupal Elements: The plugin should offer autocomplete suggestions for a wide range of Drupal elements, including storages, fields, field properties, theme, render elements, and their properties. This feature will significantly speed up the development process by reducing the need to manually type out Drupal-specific code.
Type Providers: Implement type providers that can resolve storage, entity, entity fields, and entity references. This functionality will provide context-aware suggestions and improve code navigation within PhpStorm, enabling developers to work more efficiently with Drupal projects.
Simplified Development for New Developers: The plugin should aim to simplify the learning curve for new developers by providing intuitive autocomplete suggestions and context-aware help for Drupal-related code elements. This will empower newcomers to Drupal development to quickly grasp important concepts and write code more effectively.
Enhanced Productivity for Experienced Developers: While catering to new developers, the plugin should also offer advanced features that seasoned Drupal developers will find valuable. This includes advanced autocomplete options, intelligent code navigation, and other productivity enhancements tailored to the needs of experienced developers.
Outcome:
Upon completion, the PhpStorm plugin for enhanced Drupal integration will significantly streamline the development workflow for developers working with Drupal projects in PhpStorm. The plugin will empower developers to write code more efficiently, reduce errors, and improve overall productivity. By providing advanced autocomplete features, type providers, and other helpful functionalities, the plugin will cater to the needs of both new and experienced developers, ultimately enhancing the Drupal development experience within PhpStorm.
To extend Drupal integration with PHPStorm, one needs Drupal. The decision was tough but finally, we decided to use Drupal :)
Technical Specifications
Drupal version:
Key modules/theme/distribution used: