Preston So

Recent Blog posts

actual waterwheel

Decoupling Drupal with Waterwheel for Ember and React

Posted on Monday, June 26, 2017 - 16:21

The Waterwheel ecosystem paves the way for non-Drupal developers to use decoupled Drupal as a headless back end without having to learn a lick of Drupal or PHP. Now, the Waterwheel team is excited to release several new projects that benefit developers developing JavaScript applications built in Ember and React.

A reservoir

Introducing Reservoir, a Distribution for Decoupling Drupal

Posted on Monday, June 19, 2017 - 13:51

Reservoir is an experimental Drupal distribution that is an exceptional starting point for any decoupled Drupal implementation. It is also designed to on-board developers of all backgrounds: a decoupled Drupal distribution and optimal back end for every developer.

javascript code

ES6 for Drupal Developers: ES6 Modules, Classes, and Promises

Posted on Wednesday, April 12, 2017 - 11:10

Some of the most important new features in ES6 originate from existing solutions for problems shared by a large swath of JavaScript applications.

javascript image

ES6 for Drupal Developers: Arrow Functions, Concise Methods, and Other Syntactic Features

Posted on Friday, April 7, 2017 - 17:16

Object structures and functions are possibly two of the most commonly utilized syntactic features in JavaScript, as they both have important roles in defining classes in object-oriented programming


ES6 for Drupal Developers: Spread, Default Values, and Destructuring

Posted on Friday, March 17, 2017 - 10:46

In the first installment of this blog series, we set up a workflow that allows us both to transpile arbitrary ES6 into JavaScript legible to all modern browsers and to bundle that JavaScript into browser-ready assets. We also explored how working with variable scope has improved in ES6 and working with let and const statements. In this second installment, we’ll be digging deeper into assigning values to variables as well as the spread (or rest) operator.


ES6 for Drupal Developers: Getting Started with ES6

Posted on Wednesday, March 15, 2017 - 11:55

For many Drupal developers, JavaScript can sometimes feel like an uncharted wilderness. Fortunately, JavaScript has entered a new renaissance since the release of open-source projects like V8 and Node.js, and frameworks like Angular, Ember, and React are rapidly gaining steam. The advent of ECMAScript, a codified specification for JavaScript, has ushered in a new era of innovation in the language, culminating in the new modern version of JavaScript: ES6.

black hole

Decoupled Drupal with JSON API and Ember: Consuming Drupal with Ember Adapters and Models

Posted on Wednesday, December 21, 2016 - 09:14

Among the most crucial steps in architecting decoupled Drupal-backed applications is to bridge the gap between Drupal and the designated front end so that the latter can receive and manipulate data on the Drupal data repository via API calls. For some frameworks, this can be a rather tedious exercise in navigating the server-side APIs and crafting the correct requests on the client side. Luckily, with JSON API now proposed as a core experimental module for Drupal 8, the tightrope walk between Drupal and Ember is about to become more of a cinch.

black hole

Decoupled Drupal with Ember: Introducing Ember and JSON API

Posted on Wednesday, December 14, 2016 - 10:03

Decoupled Drupal has long been an approach touted by some in the front-end contingent of the Drupal community to achieve goals such

an actual waterwheel

Retrieving and Manipulating Content with Waterwheel.js

Posted on Tuesday, October 4, 2016 - 09:57

In my previous blog post in this Waterwheel series, I detailed the basics of Waterwheel.js: how to set it up in server-side or client-side JavaScript, and how resource discovery can bring Drupal-backed applications and traditional Drupal implementations closer together in unprecedented ways. In this post, I explore how to manipulate content with Waterwheel.js.

Getting Started with Waterwheel.js and Resource Discovery

Posted on Friday, September 30, 2016 - 13:47

For developers of Drupal-backed JavaScript applications, simply having an HTTP client which can make requests against Drupal 8’s core REST API is often not enough. JavaScript developers are sometimes stymied by nuances unique to Drupal which leak out when consuming Drupal’s REST API, such as Drupal-specific paths for resources and confusing data structures in responses. Waterwheel.js alleviates these barriers to JavaScript developers by providing an additional API atop Drupal REST which allows you to retrieve and manipulate content entities in Drupal 8 without needing to deeply understand Drupal’s internals.

Subscribe to Recent Blog posts