Skip directly to content

Module Development

JSON:API 2 - A Path To Decoupled Drupal

July 2019

With the inclusion of JSON:API in Drupal core, we now have a solid, stable path to support decoupled Drupal through standardization of payload structures and query string parameters.

This session will cover:

  • Why JSON:API instead of the REST module, GraphQL, Relaxed WS, etc.
  • JSON:API overview
  • Authentication with JSON Web Tokens
  • Requests, filters, sorting, pagination
  • File uploads
  • Gotchas

Benji Fisher: The State of the Migrate API in Drupal 8

February 2019

The Migrate API started as a contrib module in Drupal 6 and 7. From the start, it was designed to handle large-scale projects, creating Drupal nodes, taxonomy terms, etc., from almost any source: another Drupal site, an XML or CSV file, or the database from another CMS. The base module kept track of what had already been brought into the site, so it supported incremental migrations as well as updates of previously migrated content.

In order to use these versions of the Migrate API, the site

Erich Beyrent: Configuration as Dependency - Managing Drupal 8 Configuration with git and Composer

February 2017

Drupal 8 provides a robust configuration management system which represents a paradigm shift from previous versions of Drupal. It's now easier than ever to represent your configuration in code and manage it with source control. However, that may not be enough.

This session will propose a new strategy for thinking about Drupal 8 configuration, treating it as just another dependency, managed the same way code dependencies are managed with Composer.

We'll cover:

  • Drupal 8 configuration

Joshua Bolduc: Drupal 8 Plugins

June 2017

From blocks, to views, to entities, plugins are one of the major foundational concepts in Drupal 8. But what exactly is a plugin? In this technical presentation we'll begin with a brief introduction about what plugins are, their advantages and how they fit within the broader context of Drupal.

Next you'll learn how easy it is to create your own plugin by extending any of the dozens of available plugin types in core.

We'll unravel the mysteries of Plugin Derivatives; how you can write one

Peter Wolanin: Drupal 8, where did the code go? From info hook to plugin.

November 2016

Looking at core and contrib modules for Drupal 8, you may be wondering "where did the code go?".

Drupal 8 has removed many of the "info" hooks that were found in your module file and converted them to plugins.

This session will be a practical discussion of how plugins work and how to upgrade your module to Drupal 8 if it used one of these hooks that's been converted to a plugin. I will include example of code from Drupal 7 and where the very similar code lives in Drupal 8.

In addition I'll

Peter Wolanin & Moshe Weitzman: Cracking Drupal

September 2016

Security is paramount, for almost any web application. We will take a look at security best practices to keep your site safe and take the perspective of an attacker to understand how they exploit things. We will show you common mistakes that Drupal Developers make when they write code and how they can be avoided. As members of the security team and code review administrators on drupal.org we have seen a lot of code and what can go wrong with it. Sharing our experience about:

  • XSS, CSRF, Access

Erich Beyrent: Configuration as Dependency: Managing Drupal 8 Configuration with git and Composer

October 2016

Drupal 8 provides a robust configuration management system which represents a paradigm shift from previous versions of Drupal.  It's now easier than ever to represent your configuration in code and manage it with source control.  However, that may not be enough.

This session will propose a new strategy for thinking about Drupal 8 configuration, treating it as just another dependency, managed the same way code dependencies are managed with Composer.

We'll cover:

  • Drupal 8 configuration

Erich Beyrent: Configuration as Dependency: Managing Drupal 8 Configuration with git and Composer

September 2016

Drupal 8 provides a robust configuration management system which represents a paradigm shift from previous versions of Drupal.  It's now easier than ever to represent your configuration in code and manage it with source control.  However, that may not be enough.

This session will propose a new strategy for thinking about Drupal 8 configuration, treating it as just another dependency, managed the same way code dependencies are managed with Composer.

We'll cover:

  • Drupal 8 configuration

Kristof Van Tomme: Drupal for Documentation and Developer Portals

May 2016

Drupal really shines when you need to integrate lots of different types of content from different origins. This is exactly what is required to make a great developer or documentation portal. In this session I will walk make an overview of a number of projects we've done, prototypes we've built and explain how they can be used to build the ultimate developer experience.

Michael Miles: The Flexibility of Drupal

January 2016

No other CMS offers more flexibility then Drupal. If you need to implement a piece of functionality or change a piece of data, there are a million different ways you can go about it. However, this flexibility can also be daunting and frustrating. How do you know if you are going about your changes the “right" way? The truth of the matter is that there is no “right" way - just the “right for me” way. Any method you choose will come with it’s own sets of drawbacks and benefits.

Pages