Writing Custom Drupal Modules the Right Way
A complete, maintainable module pattern using routes, services, dependency injection, permissions, and forms.
Practical engineering notes
Practical Drupal, PHP, architecture, and engineering guidance from enterprise application work.
RSS feed8 articles
A complete, maintainable module pattern using routes, services, dependency injection, permissions, and forms.
How this portfolio’s theme organizes libraries, Twig, responsive behavior, accessibility, and performance.
A systematic way to isolate routing, data, rendering, and theme failures when Drupal returns a generic error page.
Theme registry, template suggestions, loader paths, and cache rebuilds explained through a practical template-not-found failure.
A calm debugging workflow using logs, Xdebug, Kint, browser tools, and progressively narrower hypotheses.
A complete Drupal block plugin using attributes, dependency injection, configuration, and cache metadata.
A complete, schema-backed Drupal configuration form with validation and dependency injection.
Secure Drupal endpoints with explicit routes, authentication, serialization, validation, and cache policy.