Scriptable
utility
7/20/2026

Scriptable

bySimon B. Støvring
9.2
The Verdict
"Scriptable is the rare utility that expands what its platform is. Støvring took the most locked-down mainstream OS on the market and gave it a scripting layer that feels native, documented, and — astonishingly — free. The prerequisite is real: you must be able to write JavaScript, and the app makes no apology for that. But for the audience it serves, there is simply nothing else like it on iOS, and the closest alternatives either cost money, speak a different language, or top out far earlier. Eight years into home screen widgets and Shortcuts maturing around it, Scriptable hasn't been made redundant — it's been made essential. This is one of the finest pieces of independent software on the App Store."

Key Features

JavaScript-Powered Widgets: Write a home screen or lock screen widget entirely in JavaScript — layout, data fetching, refresh logic, all of it — and iOS renders it natively without ever opening the app. This is the feature that made Scriptable famous, and it remains unmatched.
Native API Access: First-class bindings for calendars, reminders, contacts, photos, files (with iCloud Drive sync), location, notifications, and HTTP requests. These aren't wrappers around wrappers; they're direct, documented interfaces to iOS itself.
Siri Shortcuts Integration: Scripts plug into Shortcuts as actions, can display tables and images inside Siri, and can speak output aloud — which means Scriptable becomes the "escape hatch" for any Shortcuts workflow that hits the limits of visual programming.
A Real Editor, On Your Phone: Syntax highlighting, autocomplete, a logging console, and inline documentation. It's a legitimate development environment, not a glorified text field.
x-callback-url Support: Scripts can chain into other apps and receive results back, making Scriptable the connective tissue for multi-app automation pipelines.

The Good

Free, ad-free access to native iOS APIs with no developer account required
Best-in-class custom widgets for home and lock screen
Excellent, idiomatic API design with bundled documentation
Deep Shortcuts and x-callback-url integration for chaining automations

The Bad

Genuinely unusable without JavaScript knowledge — no beginner on-ramp
Widget refresh timing is at the mercy of iOS's scheduling budget
Occasional rendering bugs (web views under the notch) and single-developer bus factor
Coding on an iPhone keyboard remains an ergonomic chore

In-Depth Review

Bottom Line: Scriptable hands you the keys to iOS's native APIs through nothing more than JavaScript, and it does so with a polish most paid developer tools can't match. If you can write a for-loop, this free app turns your iPhone into something Apple never quite intended: a programmable computer.

The Core Loop: Write, Run, Refine

The experience of using Scriptable follows a loop any developer will recognize: write a few lines, hit run, read the console, adjust. What's remarkable is how little friction iOS adds to that loop here. Autocomplete surfaces the API surface as you type — start writing CalendarEvent and the editor walks you through the object model. The console logs cleanly. Errors point at line numbers. For a platform that historically treated on-device programming as a category error, the iteration speed is genuinely good.

The API design deserves specific praise. Støvring made the choice — the correct one — to design idiomatic JavaScript APIs rather than transliterating UIKit's Objective-C conventions. Request for HTTP, FileManager for storage, Notification for alerts: the naming is guessable, the async patterns use modern promises, and the documentation is bundled directly in the app. You spend your time solving your problem, not decoding Apple's frameworks through a translation layer.

Widgets: Where It Earns Its Keep

The widget system is the headline act, and it holds up under scrutiny. Apple's native widgets are static, developer-defined things; you get what an app's developer decided to ship. Scriptable widgets are whatever you can imagine and code. Transit departures from your local API. A COVID-era vaccination tracker. Your server's uptime. A countdown to a deadline pulled from a shared calendar. The community has produced thousands of these, and copying one into your library takes thirty seconds.

There's a real constraint worth understanding: widgets run on iOS's refresh schedule, not yours. The OS decides when your widget updates, and it's stingy about it. This isn't Scriptable's fault — Apple's WidgetKit budget applies to everyone — but newcomers expecting real-time dashboards will hit this wall and should know it exists.

The Shortcuts Relationship

Scriptable's smartest strategic move is refusing to compete with Shortcuts and instead completing it. Anyone who has built a nontrivial Shortcut knows the pain: conditional logic sprawls into unreadable block towers, string manipulation is agony, and loops feel like assembling furniture with oven mitts on. Scriptable's answer is elegant — do the visual glue in Shortcuts, and when you hit real logic, call a script. Ten lines of JavaScript replace forty drag-and-drop actions. The two apps together form the most capable automation stack on any phone, full stop.

The Honest Caveats

Take the critical eye seriously here. Scriptable is not for non-programmers, and no amount of community goodwill changes that. If JavaScript is foreign to you, the app is an empty editor and a blinking cursor. The in-app documentation is a reference, not a tutorial; the onboarding assumes you already know what you're doing. Compare that to Shortcuts' guided gallery, and Scriptable's cold start is stark.

There are also the small rough edges users report — web content occasionally rendering under the notch, the odd bug in less-traveled APIs. These are minor, and Støvring's maintenance record is solid, but a one-person operation is a one-person operation. That's both the app's charm and its structural risk.

Editorial Disclaimer

The reviews and scores on this site are based on our editorial team's independent analysis and personal opinions. While we strive for objectivity, gaming experiences can be subjective. We are not compensated by developers for these scores.