Drupal Commerce sprint week 2017 - Recap
Mike Hubbard


Mike Hubbard

, Front End Lead, Developer

Posted in Drupal

July 19, 2017

Sprint Week 2017 Recap

Acro Media Sprint Week has wrapped up for another year. For those who are new to this idea, each year we bring most of our staff together to have a week of fun that includes a lot of Drupal contrib work.

Contrib work is community development of all aspects of the Drupal software, including code, design/UX, documentation and more. You can read a bit more about it on our pre-sprint week blog post.

Our goals for 2017 were pretty big. We had a lot of people grouped into several teams, each working on a different aspect. Overall, we think we did pretty well!

Keep reading or jump to a section below:


One of the goals of this sprint was to open up services for the Drupal Commerce cart module by adding endpoints for decoupled Drupal or 3rd party usage. This sets the stage for better cart integration with 3rd party APIs.

The team got a good start and were able to accomplish the following:

  • Created /cart/init POST endpoint that will initiate a cart.
  • Created /cart/{order_id} GET endpoint that will return the current state of the cart.
  • Created /cart/{order_id} POST endpoint which accepts payload with items and quantities to be added to cart, and it updates the cart as per payload.
  • Created unit tests to verify the functionality of the code. This still needs some work but it's a good start.

We don’t have the code to share at the moment, but, this start will be further refined and pushed out at a later date. For those interested, you can read more and follow progress at https://www.drupal.org/node/2894400


The UX team was our largest team this year. This team broke out into several smaller groups to tackle a number of items.

Material Admin Theme

Almost every single Drupal website has a custom theme that gives the website a unique look and feel. However, while the front end is custom, the majority of these sites use the default Drupal theme for the admin side of the site. This is the non-public facing part of the site.

Recently, we’ve wanted something a little more modern for the admin theme. Something that takes good design and pairs it with science-based usability decisions. For this, we’ve turned to Google’s Material Design and have started work on a new admin theme using it as a foundation.

Here’s a before and after screenshot of the Material theme in action. We’re hoping to have a 1.0 release soon.

Content list page
(Default Drupal admin theme)


Content list page
(Material admin theme)


Drupal Commerce Dashboard

The main dashboard for Drupal Commerce is still pretty bare bones. It’s basically just a list of links and descriptions, which is Drupal’s default behaviour for this type of thing. While this works, the dashboard is the first page many people see when using Drupal Commerce, so, we wanted something more intuitive and stylish.

Prior to Sprint Week 2017, one of our senior front-end developers who is spearheading this initiative had already been conceptualizing the dashboard with the Drupal Commerce community. We wanted to take this and get started on the development. Progress was made and the new dashboard is starting to take shape.

View screenshots and follow progress at https://www.drupal.org/node/2885483

Drupal Commerce Setup Wizard

Starting from scratch with Drupal Commerce can be a little confusing if you haven’t done it a few times already. There are a lot of different pieces to a store, so finding all of the initial settings can be somewhat frustrating. This is the motivation behind creating a setup wizard to guide people through the initial setup of a store. A wizard helps get the necessary configuration done quickly and easily.

Some of our team had already done some design/UX groundwork ahead of time. Like the dashboard, this sprint we just wanted to get started on the code. Once completed, the wizard will give users a step-by-step interface for setting up store details, currencies, taxes, payment processors, etc. Once these initial settings have been completed, you should theoretically be able to get started with the content of the store, such as products.

View screenshots and follow progress at https://www.drupal.org/node/2878968

Currency Setup UX

Sometimes developers aren’t the best at communicating with the rest of the world. Luckily, the rest of the world is also helping to develop the software! This was the case when one of our project managers discovered some confusing language when setting up currencies in Drupal Commerce. What was expected vs. what actually happens when using the primary setup tools didn’t match up, leading to confusion. This has been resolved and will soon make its way into a dev release of Drupal Commerce.

View the details and patch status at https://www.drupal.org/node/289396


Another big team this year was the documentation crew. While not very exciting, documentation is critical to the usability of Drupal as well as its ongoing development. The documentation team split into two groups, one for core Drupal 8 documentation and one for Drupal Commerce 2.x documentation. Some new pages were created while others were updated for Drupal 8.

Here’s a list of where progress was made. Note that some documentation is pending review and so may be updated.

Drupal 8 Core Documentation

Writing and contributing documentation

Server Scaling and Performance

Database API documentation port to Drupal 8

JavaScript API documentation

Form API confirmation form documentation

Managing content (reorganized documentation)

Installing Drupal 8 with Composer (updated documentation)

Drupal 8 installation

Drupal Commerce 2.x Documentation

Commerce content creation

Commerce configuration

How to contribute to commerce documentation

Added tab support to docs

Updated recipes layout and requirements

Commerce Install

The goal of this team was to create a prototype for a custom Drupal Commerce install. The idea is that a person could select options for their installation, then, based on their selections a Composer file would be dynamically generated to make the initial Drupal Commerce install a snap. Pretty cool stuff.

This Commerce Install team was able to get a working prototype completed! There’s still some work to do before it’s released into the wild, but, it’s getting close. I’m sure we’ll toss up an announcement of some sort when it’s completed.

POS (point of sale)

The Point of Sale module provides an interface for Drupal Commerce to allow in-person interactions with a Drupal Commerce storefront. This is powerful because it allows a single solution for both online and brick-and-mortar stores.

Currently, the Point of Sale module is only available for Drupal 7. The POS team was tasked with starting to port it over to Drupal 8. They made some good headway! Here’s a recap.

Development Reference

Merged commits

Pending commits

UX issues reviewed or added

Sprint Week 2018

Now the focus shifts to 2018. We’d love to see others in the online community join us for next year's Sprint! The Acro Media Sprint Week in 2018 will be happening the second week of July (9th to 13th). Mark your calendars and get in touch next year if you’d like to take part with us.