In the world of e-commerce, very few names ring louder for clients than Shopify, a platform devoted to ease of use for its customers and simplicity of theme creation for its developer base. Last year, the Shopify team released Slate, an open-source developer toolkit designed to improve the experience of creating custom themes.
Despite initial release issues, Slate provided developers with a CLI in which to efficiently build on today’s fastest growing e-commerce platform. After a year of listening intently to the development community, Shopify has released Slate v1, a newly redesigned toolkit that helps reduce coding errors and improve the developer experience.
One of the biggest draws in this new version of Slate is the bundling of a brand new set of starter themes from Shopify. The default Slate theme is generated from a Shopify/starter-theme; Shopify’s preferred starting point for developing Shopify themes. This theme includes common structures, bug fixes, and the other bare essentials from the Shopify platform.
This intentional lack of style, formatting, and functionality is designed to facilitate innovative and creative approaches from both design and development teams. For those who need even more control, there is a “Skeleton Theme” that gives you the most bare bones approach possible, but it is recommended only for seasoned Shopify developers.
Once the structure is in place, simply add in your API credentials and server information to the new .env file to specify the store that will be connected. If multiple environments exist, those can be referenced in the CLI by creating a .env file per environment (i.e. .env.production).
Depending on your preference at time of install, running “npm start” or “yarn start” will compile all your local theme files, boot up your local server, and voila, a brand new theme has begun using existing data and assets from your Shopify store.
A primary flaw of the initial release of Slate was the inability to run Shopify development servers locally and the constant wait times for file uploads to Shopify’s servers. As a response, Shopify has introduced a variety of tools and features that streamline this process and allow for quick, efficient theme editing.
Though only non Liquid files are currently served locally, strides are being made to take development completely local while still pulling the necessary data from the Shopify servers. Aspects of some of the most popular processing packages, from SASS compilation to live change reloading, have been implemented to the self-spun local environment, taking Slate to heights comparable to more widespread platforms like Gulp or Grunt.
Why This Matters
For those running small businesses or offering small to medium product catalogs, Shopify has become an ever-growing force in the e-commerce marketplace. They’ve toppled similar providers like Volusion, and Big Cartel with their wildly diverse customization options, ease of use, pricing model, and security.
With the inclusion of the newly redesigned theme development platform, Shopify has poised itself to corner the market for creative, small scale shops. Though it may lack the power of some of it’s larger enterprise relatives like Magento, it has the drive to create an experience unlike any other.
While it has long been the leader in ease-of-use for it’s customers, the theme development community now has the tools needed to take this platform to new heights. Whether a dedicated partner or developing a theme for the first time, the community can make even the most basic offerings into something truly unique.
Aaron Smith is a senior software engineer at FortyFour.