Drupal is a registered trademark of Dries Buytaert
cms 2.1.3 Update released for Drupal core (2.1.3)! drupal 10.5.11 Update released for Drupal core (10.5.11)! drupal 11.3.11 Update released for Drupal core (11.3.11)! drupal 11.2.13 Update released for Drupal core (11.2.13)! drupal 10.6.10 Update released for Drupal core (10.6.10)! cms 2.1.2 Update released for Drupal core (2.1.2)! drupal 11.1.10 Update released for Drupal core (11.1.10)! drupal 10.5.10 Update released for Drupal core (10.5.10)! drupal 10.4.10 Update released for Drupal core (10.4.10)! drupal 11.2.12 Update released for Drupal core (11.2.12)! drupal 11.3.10 Update released for Drupal core (11.3.10)! drupal 10.6.9 Update released for Drupal core (10.6.9)! drupal 10.6.8 Update released for Drupal core (10.6.8)! drupal 11.3.9 Update released for Drupal core (11.3.9)! drupal 11.3.8 Update released for Drupal core (11.3.8)! drupal 11.3.7 Update released for Drupal core (11.3.7)! drupal 11.2.11 Update released for Drupal core (11.2.11)! drupal 10.6.7 Update released for Drupal core (10.6.7)! drupal 10.5.9 Update released for Drupal core (10.5.9)! cms 2.1.1 Update released for Drupal core (2.1.1)!

sdc_devel

284 sites Security covered
View on drupal.org

Provides development aids to Single-Directory Components developers.

Features

Component validator

Validate for errors and best practices:

  • Component definition (YAML) with advanced checks and logic
  • Component template (Twig) with static check of the syntax and the usage
With a drush command
 $ vendor/bin/drush sdcv --install my_theme
 [notice] Start validation of my_theme...
  ----------------- 
  Component          Severity   Message
 ----------------- 
local-tasks          Warning    Deprecated Twig filter: `spaceless`. The spaceless filter is deprecated as o
page                 Warning    Use slots instead of hard embedding a component in the template with `embed`
form-element-label   Error      Unknown variable: `title_display`.
form-element-label   Warning    The exact same as just testing the variable, empty is not needed. 
dropdown-menu        Error      Array of empty object. 
dropdown-menu        Warning    `is iterable` test is too ambiguous. Use `is sequence` or `is mapping`.               
In the admin UI

As a PHPUnit Kernel test

A test Kernel class to extend is enough to run the Validator with PHPUnit.

use Drupal\Tests\sdc_devel\Kernel\SdcDevelComponentKernelTestBase;
use PHPUnit\Framework\Attributes\CoversNothing;

#[CoversNothing]
final class ComponentValidatorTest extends SdcDevelComponentKernelTestBase {

  /**
   * {@inheritdoc}
   */
  protected static $modules = [
    '_my_module_with_component_',
  ];

  /**
   * {@inheritdoc}
   */
  protected static $themes = [
    '_my_theme_with_component_',
  ];
}

UI Suite Initiative

This module, was previously know as ui_patterns_devel and part of UI Patterns 2 codebase.

SDC Devel can be used as standalone, but shines with other UI Suite modules. Together, they provide a a full API to implement full design systems while preserving and improving the Drupal site building experience:

Similar projects

Component Libraries: Devel also provides a component definition validator, focused on JSON schema validation.

Activity

Total releases
3
First release
Jan 2025
Latest release
4 months ago
Release cadence
175 days
Stability
100% stable

Release Timeline

Releases

Version Type Release date
1.0.2 Stable Jan 9, 2026
1.0.1 Stable Mar 8, 2025
1.0.0 Stable Jan 24, 2025