Recently, a client of ours decided on Shopify for their store solution.

While Shopify allows a lot of freedom for designing your themes, all interaction with your theme files on their server generally requires going through the backend web interface. So, you can work on your IDE of choice ( TextMate in my case ) and then copy/paste your work into a textfield and submit. The process can become tedious, especially if you are trying to debug or tweak a file to get the layout just right.

Shopify offers a pretty robust API which supports the GETting and PUTting of assets. To that end, I’ve put together a shopify.tmbundle which allows downloading/uploading of theme assets from within TextMate. Next best thing to having FTP access. Thought some other people might find it useful.

You can read the full details, but in a nutshell, the bundle offers:

  • Download Theme: Will download the entire theme from Shopify. Useful when you just getting started to download the whole Theme.
  • Update Current File From Shopify : Will replace the contents of the file you are working on with the file from Shopify.
  • Update Selected Files from Shopify : Will fetch the files you have selected in the Project Window from Shopify.
  • Send Asset to Shopify ( ⌘U ): Will save the document you are working on, and upload to shopify. Used for text assets.
  • Send Selected Files to Shopify : Will upload any files you have selected in the Project Panel to Shopify. This is what you want to use to upload a bunch of files at once. feedback welcome.

(Thanks to Steve B. for the fun graphic)

Design & Code