Freewrite and Zapier — Drafting Bliss
UPDATE (August 28, 2024): Medium has deprecated their public API, so unfortunately, this workflow is no longer viable. 😢 I still use my Freewrite every day.
The Freewrite allows me to just write. I’m unhindered by digital distractions. With a bit of automation mojo, I’ve built a writing workflow that takes me from drafting on the Freewrite to creating a draft on Medium. All without leaving the comfort of the clicking sounds of my mechanical keyboard. I’m going to show you how it’s done.
The List of Ingredients
The Freewrite Digital Typewriter
This little device is satisfying to type on and has boosted my writing productivity. It’s weird just typing without digital distractions, but I have gotten used to it, and now I crave the quiet simplicity.
Postbox Sync
Postbox is the Freewrite cloud sync service. Connect your Freewrite to your network and set up cloud syncing, and your drafts will be automatically uploaded to the service. From a browser, you can access your drafts and set up sync with a third-party service like Dropbox, Google Drive, or Evernote.
Zapier Automation
Zapier is an automation service that lets you connect different cloud services together. It is based on triggers and actions. The basic flow looks like this:
- When something happens on the trigger service, take some action. That’s it! Relatively easy no-code automation.
Medium Account
If you are reading this article, then you obviously know about Medium. It’s the platform that I use for some of my writing. It also has an API, which allows Zapier to take advantage of an action to create a draft on Medium.
Github Account (Optional)
Github is traditionally used as a version control system for code. There is also a service on GitHub called Gist. A Gist is a snippet of code (or, in our case, this article) that you can share without all of the trappings of a full-blown Github repository (think of the repository as a storage vault for your code or text files). I use GitHub as a third location for my article backup.
The Recipe
Freewrite Postbox Sync Setup
First, you will set up the Freewrite Postbox Sync. You will want to set the third-party sync to Google Drive for this recipe. You can set the sync for all folders or set it on a per folder (A, B, or C) basis. Create a test draft on your Freewrite to make sure everything is working.
Zapier
This is where most of the setup occurs. You will want a paid Zapier plan (the Starter plan will work). Once you have a Zapier account, it’s time to make your automation workflow. This is what Zapier refers to as Zaps. The interface has several buttons to create a Zap, or you can use their new AI prompt. This article will walk through how to create a Zap from scratch. The prompting will become more intuitive once you create your first Zap. The screenshots for each step are listed after the steps.
- Click on Create Zap in the left sidebar.
- Click on the “1. Trigger” box and add your trigger. In this case, you will search for Google Drive, choose the “Updated file” event, and fill in the details. The Drive should be “My Drive,” and the path should be “Postbox/A (Or B or C, depending on how you’ve set up your Freewrite).” Keep clicking through the folders in the Zap setting until you reach it.
- Now, you can add the actions. The first is a GET Webhooks action. We need this because the Google Drive trigger does not pass the file’s contents. Just the metadata. You will need to grab the contents with a GET command. The URL field is the only one required here. You must fill it with the File URL variable from the previous step.
- The next step requires a filter action. Since you may not want every draft synced from your Freewrite to get created as a draft on Medium, you can set up a filter to only continue if the draft content contains specific text (In this case, the text string was “# Medium.” You can add this text string to the bottom of your draft using your Freewrite when you are ready to send it to Medium using this automation.
- This next step is a personal preference. The draft from Freewrite gets saved with the initial creation date as part of the title. You can add a formatting action to remove the date and keep the title.
- This step is also a personal preference. If you want the Github Gist to be stored as a markdown file, change the file extension from “.txt” to “.md.”
- The next step is to remove the filter text from the draft. You will use a format action to accomplish this.
- This step will create a Github Gist from the draft. You will choose GitHub as the action and “Create Gist” as the event. The filename will be the output from the format action step in the Zap where you removed the first 11 characters from the title. The content will be the output from the GET action step in the Zap.
- This step will remove the .md extension from the filename so it can be used as the Medium draft title. You will use a format action to do this. The input for this step is the format action step in the Zap, where you replaced .txt with .md.
- The last step will be to create the story draft on Medium. The title is the output from the previous format action step in the Zap where you removed .md. The format is Markdown. The content is the output of the format action step in the Zap where you removed “# Medium” from the text content. You will likely want to polish the draft before it is published, so make sure the “Publish Status” option is set to “draft.”
Distraction Free Drafting Workflow
Congrats! You have created a distraction-free drafting workflow that will take you from drafting to story draft on Medium without leaving your Freewrite keyboard. As an added bonus, you have the peace of mind that your article draft is backed up to three locations (Postbox, Google Drive, and Github). Once you start playing around with the power of no-code automation.
Links: Zap Used in This Article