| Understand config system architecture |
Config System Overview |
When you need to understand Drupal's configuration management architecture — how config data is structured, stored, validated, synchronized, and overridden. |
| Choose between simple config vs config entity |
Simple Config vs Config Entities |
When deciding whether to implement config as simple config (singleton YAML) or config entities (multiple instances, CRUD, UI). |
| Define config schema YAML |
Config Schema YAML |
When defining the structure and data types for your module's configuration so Drupal can validate, cast, and translate config values. |
| Use core data types in schema |
Core Data Types Schema |
When writing config schema and you need to know which core data types are available for scalars (string, integer, boolean), containers (mapping, sequence), and specialized types (email, uri, label). |
| Write config schema for my module |
Writing Config Schema |
When creating a new module with config (simple or entity) and you need to define schema so Drupal validates and casts config values correctly. |
| Read config in code |
Config Factory & Reading Config |
When you need to read configuration values in custom code — forms, controllers, services, hooks. |
| Create config entities |
Config Entities |
When you need to create user-manageable lists of configuration items (like views, image styles, vocabularies) with CRUD operations, dependencies, and admin UI. |
| Define config entity schema |
Config Entity Schema Definition |
When defining config schema for config entities — schema must match exported YAML structure and include all entity keys. |
| Choose storage backend |
Config Storage |
When you need to understand how Drupal stores configuration data — active storage (database), sync storage (filesystem), and custom storage backends. |
| Sync config between environments |
Config Synchronization |
When you need to sync configuration between environments — export config from dev, commit to Git, import to staging/production. |
| Export/import with Drush |
Config Import/Export |
When you need to export config from active storage to sync directory, or import config from sync directory to active storage using Drush commands. |
| Override config per environment |
Config Override System |
When you need to override config values per environment (e.g., API keys, site name) without modifying stored config or committing credentials to Git. |
| Split config by environment |
Config Split |
When you need to manage environment-specific configuration (dev modules, production settings) that should not be deployed to all environments. |
| Understand config dependencies |
Config Dependencies |
When you need to understand how Drupal tracks which modules, themes, and config entities depend on each other, and how dependencies affect import order and deletion. |
| React to config changes |
Config Events |
When you need to react to config changes — save, delete, import, rename — via event subscribers. |
| Handle module install config |
Config Installer |
When your module needs to provide default configuration that's installed when the module is enabled — content types, views, fields, module settings. |
| Deploy config safely |
Deployment Workflows |
When deploying configuration changes from development to staging to production, ensuring safe, repeatable, rollback-capable deployments. |
| Use config with Recipes |
Config & Recipes Integration |
When you need to distribute reusable configuration bundles (Recipes) that install modules, config, and content together as a single unit for features or starter kits. |
| Follow best practices |
Best Practices & Patterns |
When you need guidance on config management patterns, architecture decisions, and proven approaches for maintainable config workflows. |
| Avoid common mistakes |
Anti-Patterns & Common Mistakes |
When you need to identify and fix common config management mistakes — patterns that break deployment, cause data loss, or create security issues. |
| Secure config & optimize performance |
Security & Performance |
When you need to secure configuration data, prevent vulnerabilities, and optimize config access for performance. |
| Find code references |
Code Reference Map |
|