5 Productivity-Enhancing Tips for Improving Your Demandware (Salesforce Commerce Cloud) Development Environment

For developers used to large, open-source communities where nearly every problem can be solved with a quick google search, starting to develop on Demandware can be painfully opaque.

The good news is that there are a lot of smart and talented developers using Demandware and creating plugins and tools… they are just harder to find.

Many of the interesting projects are behind logins on Demandware XChange or on private repos on Bitbucket or Github, meaning that search engines can’t find them.

Below I’ll introduce you to some good resources for developers new to Demandware, or grissled Demandware developers looking to learn some new tricks. If you think I’ve missed something, please feel free to add it in the comments below.

1. Switch from Eclipse to VS Code & Prophet Debugger & DW-Utils Node Package

My preferred setup is VS Code, with the Prophet Debugger for debugging (as the name implies) and DW-Utils for uploading and cleaning your sandbox from the command line.

This suggestion is #1 on my list for a reason: it made me feel like my development environment jumped a decade into the future when I left Eclipse.

One note: you’ll still need to fire up Eclipse if you have to debug pipelines. But as we use fewer pipelines and more controllers, I’ve found that I can go days without opening Eclipse.

2. Join and Contribute to the Unofficial Demandware Slack Channel

This slack channel has helped me out dozens of times and you can learn a lot by seeing what other folks are working on.

3. Use The Salesforce Commerce Cloud Community Suite

Our grunt build script, for instance, is just a customized version of the Grunt script that comes out of Community Suite.

There are lots of other projects in the Community Suite, including:

  1. Unit Testing / Mocking Tool
  2. Data Usage Tool
  3. Content Copy Tool

And many more…

Currently the Community Suite’s location is a bit in flux. Up until last month the repo was kept on Bitbucket but it looks like it is being moved to Github. Check this page on Demandware Xchange to find out how to get access to the community suite whenever you are reading this in the future.

4. Read Demandware Site Genesis aka Reference Architecture

Given this, many sites will stay on the same version of the reference architecture for years while the newest Reference Architectures add really interesting features and code styles.

I encourage all Demandware developers to look over the newest Reference Architectures as they come out. Frankly this wasn’t something I did until my previous Lead Developer recommended it. I’m so glad he did.

As of this writing, the latest Reference Architecture has all sorts of new features, including…

  1. Client-side testing framework using Mocha and Webdriver, Docker and Selenium Server
  2. Tons of new interesting tasks in the Grunt and Gulp Files

You can find the latest Reference Architectures available for download on Demandware Xchange.

5. Easily Implement React.js / Vue.js / Typescript / Javascript Library Du Jour

I’ve personally used React and Typescript with Demandware and really enjoyed the experience.

While I don’t have experience using Vue.js with Demandware, I don’t see why there would be a problem using it.

If you decide to use React.js, Vue.js, Typescript, or something else, you will need to setup babel or the typescript compiler to watch your files and compile them. The SFCC Community Suite can help with this.

Thanks for reading some tips to make improve your developer experience on Demandware. Please leave your own tips in the comments below or feel free to reach out to me on linkedin or my own personal website at BradleySpencer.com.

Full-stack developer who loves Javascript and Coffee, appreciates good design, and aspires to be a mediocre tennis player.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store