Supercharge Your Writing Work Flow In Statamic
Firstly I need to thank Andrew Travers (@byekick) for his tip on using Automator for mac as this is something I haven't looked into before. My work flow today is as follows:
- Open IA Writer my tool of choice for writing.
- Use TextExpander to automatically output my YAML Front Matter with a simple TextExpander abbreviation (yyaml). This includes fill in snippets for the title, status, categories and tags.
- Start writing, and save to Dropbox. I can easily pick up the same file whatever device I might be on (iPad, iPhone, or Mac) as Dropbox syncs everything for me, and it even has version control built in so that I can revert to a previous version if necessary.
- When I have a finished the article and it is ready for publishing I open up Transmit (my FTP app of choice) navigate to my
_contents/articlefolder on my server, upload, and away we go.
This process is probably what many people are following, but where I think it can get even better is by automating the last part. My conversation with @byekick led to some interesting ideas which I thought could be of use to others. Firstly I googled using Automator for Mac to see how you can use it to upload to a web server from a local folder. This came up with the following links:
Using Wappwolf Service
Wappwolf is a free service which enables you to automate processing files that you have stored in Dropbox. One of the processes it has is the ability to FTP up to your server from a chosen Dropbox folder. I signed up to give it a try and couldn't get it to work so quickly moved on. Wappwolf later sent me a tweet with a link to another service they have called ibeam.it which looks like it does a similar thing but I have yet to try it.
Using Automator With Transmit
You can use a Transmit Automator action to watch a folder, when a new file is added to the folder you are watching Automator will upload the file to a Transmit FTP favorite of your choosing (see screencast). This works great and is easy to set up but it only initially uploads the file, as far I could see there is no way to watch the file for changes and then upload those changes. I continued the search.
Using Transmit Dock Send
On the Panic website they list 15 top tips for using Transmit, one of which is using a feature called Dock Send (number 5):
Inspired by the late Erik J. Barzeski (he’s alive), Dock Send is a great feature for those of you who quickly fling items to various favourites all day long.
This is a great hidden feature which works great but you still have to drag the finished article to the Transmit Dock, yeah I know how lazy can one person be, but I am sure we can do better.
Auto Deploy Services
I use the auto deploy mode in Beanstalk a lot for large projects at work and there is a similar service called Deploy these are both subscription services and would do the job seamlessly. If you are already using them then it would be easy to add it into your work flow at no extra cost. I think for most people they may well be overkill especially if you are not already signed up and using them.
The Perfect Solution?
My search ended with an app called FolderWatch this is a simple app which keeps files synced between different computers, servers and external drives. The price is £7.99 in the mac app store. I found this app to be fantastic, you just tell it to watch two folders and bang they are kept in sync, you can just forget it's even running. To set up is really simple to, there is a short video on their website (check out the robot voice over). The only thing I had to do was mount a disc of my Transmit directory to use as the destination folder. In Transmit right click on you favourite and select mount as disk.
Due to the fact that this solution is super efficient as soon as you save a file in your Dropbox folder it will automatically be synced on your live site. This is exactly what we want but just remember to mark your status as draft in the YAML Front Matter until you are ready to show your article to the world on your live site.
So there you have it, I would say that I have now found a method where there are absolutely no blockers to help me write more. If you have any other ideas feel free to put them in the comments below.