Cherri: A development environment for Apple Shortcuts

3 hours ago 1

Cherri Hero Image

Cherri (pronounced cherry) is a Siri Shortcuts programming language that compiles directly to a signed Shortcut you can then run on your Apple devices.

Try Cherri

/* Hello, Cherri! */ #define glyph smileyFace #define color yellow @message = "Hello!" alert("Message: {message}", "Alert")

Why Cherri?

  • 🖥️ Laptop/Desktop based development
  • 🎓 Easy to learn and syntax similar to other languages
  • 🐞 1-1 translation to Shortcut actions as much as possible to make debugging easier
  • 🪶 Optimized to create as small as possible Shortcuts and reduces memory usage at runtime

Read Documentation Install

Use the glyphs search site to easily generate a Shortcut icon for Cherri outside of Shortcuts.

Generate Your Shortcut Icon

How does it work?

🪄 No magic variables syntax, they’re constants instead

const int = 37 show("{int}")

Learn more

#️⃣ Include files within others for large Shortcut projects

#include 'other-file.cherri' // ... #include 'another-file.cherri'

Learn more

🔧 Define custom actions

#include 'actions/scripting' action myCustomAction(text test) { show("{test}") } myCustomAction("Test")

Learn more

📋 Copy-paste actions automatically

#include 'actions/network' copy checkConnection { const online = isOnline() if !online { alert("No internet connection!") } } // ... paste checkConnection

Learn more

🥩 Define raw actions with a custom identifier and parameters

rawAction("is.workflow.actions.gettext", { "WFTextActionText": "Hello, world!" })

Learn more

Creates a text action in the VCard format based on the arguments. It also supports images.

makeVCard("Title", "Subtitle")

Learn more

🔢 Type system and type inference

/* Declared types */ @string: text @integer: number /* Inferred types */ @txt = "Test" @int = 37

Learn more


Read Entire Article