Episode 9 of Automators is all about Scriptable, a great app released for iOS 12 which allows you to control your device with JavaScript. We were fortunate enough to have the developer of Scriptable, Simon B. Støvring come on the podcast to tell us about the app and some of the things it can do.
I'm going to use this article to give you a quick overview of Scriptable - if I wanted to detail everything you'd probably end up reading a 10,000 word post and this is supposed to be a blog post to accompany a podcast! So, let's get started.
Scriptable is a framework which lets you control your device by writing scripts - much like Shortcuts it doesn't do anything itself directly, but instead it enables you to write code which can do anything from check if Slack is down by reading a webpage, to manipulate your contacts, read an API key from your keychain, and even more.
Scriptable includes several example scripts:
Inside the app there's documentation which tells you what you can do directly with the device, this includes:
... and much more! All of these are on top of what is regularly available in JavaScript - just like Drafts, Scriptable uses ES6 JavaScript, this is the most recent version and you can find a very comprehensive guide, plus tutorials on the Mozilla Developer site. We also mentioned the CodeAcademy JavaScript course which is good place to start learning JavaScript.
Another app we mentioned during the show was Pythonista which is a powerful scripting app for iOS - as you might guess from the name it's Python based rather than JavaScript.
Every Scriptable script can be added to Siri right from it's settings page, this is also where you can add it to Launch Center Pro, copy the URL scheme, say what the script can accept as input, or specify the script should always run in the app - listen to the chapter at 17:59 to find out why you might need to do this!
Towards the end of the show Simon mentioned some of the things he was working on and while he couldn't make any promises when we recorded, Scriptable has been updated today! The update includes, auto complete, interactive tables, the ability to evaluate JavaScript in a WebView, a new contacts bridge, and more.
Even if you don't know JavaScript and have no intention of learning it I highly recommend you download the app and try the example scripts - and don't forget to check out the Scriptable category in the forums for more example scripts too.
Thank you very much to Simon for coming on the show, and thank you to Omni Group - makers of OmniFocus - for sponsoring it!
Episode 9: Scriptable with Simon B. Støvring
01:37: Pythonista
02:08: The origin of Scriptable
03:41: Pre-Launch Jitters
08:06: Example Scripts
11:08: System Integration
12:30: Early Feedback on Scriptable
13:36: Scriptable vs Shortcuts
16:22: Rose's Good Morning with Scriptable
17:51: Launch Center Pro
17:59: Always Run in Scriptable?
20:18: URL Schemes
21:36: Nerds will not be stopped!
22:24: What can Scriptable do?
28: Sponsor: OmniFocus
29:55: Learning JavaScript
33:51: What is JSON?
35:36: Comic in Siri Script
40:26: What's next for Scriptable?
43:36: Find us