Florida Drupalcamp 2015
Parent Track: 
Design, Theming, & Front-end Development

Current front-end workflow benefits from the use of a few fresh technologies, white currently are not standardized. Drupal front-end development means familiarity with LESS, Sass and likely SMACSS. This is especially true as we move closer to a D8 release date. Both LESS and Sass need some form of compiling to produce browser-compatible CSS: GUI-based or command-line based.

There’s now a multitude of supported frameworks, mixin-libraries and preferred methods of integration. Today's chart-toppers include task runners like Grunt and Gulp, and Sass frameworks like Compass, Susy, and Singularity. Grunt and Gulp are both task runners with associated plugins; able to offer a plethora of tasks as by their communities. Compass, Susy and Singularity are all frameworks used to produce front-end layouts with reduced investment of effort. Compass also provides short-hand mixins for various CSS behaviors.

The front-enders at Chapter Three came together to discuss standardizing projects; a goal that had raised much contention in the past. We couldn’t agree on much outside of using Sass as our preprocessor and Susy as our layout framework. Susy’s flexibility is it’s primary strength. Instead of producing pre-set containers, it produces reusable grids on-demand. We felt other frameworks were too cumbersome and bloated. Lately the majority of our front-enders have been using Gulp to compile via the command-line due to it’s speed and community support.

We’ve also recently experienced a resurgence in commenting importance. It's more helpful than expected when handing-off projects to other developers, both in-house and out-of-house. Be informative, be verbose, be honest; even “todo” comments are helpful and reduce the barrier-to-entry to theme-development.

Since tools come with their own learning curves, we try to leverage Drupal for more of our build process. This lowers the barriers of entry for Drupal developers looking to crack into the build process landscape. Increasing the complexity of a project is bad for all parties, and using Drupal to power your build process removes unnecessary moving parts.

The slides for the session can be found here.