# \[ANN\] AppleScriptingBridge.jl

**URL:** <https://discourse.julialang.org/t/ann-applescriptingbridge-jl/96798>\
**Category:** Package Announcements\
**Created:** [March 29, 2023, 7:22pm UTC](https://discourse.julialang.org/t/ann-applescriptingbridge-jl/96798 "2023-03-29T19:22:32Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [March 29, 2023, 7:22pm UTC](https://discourse.julialang.org/t/ann-applescriptingbridge-jl/96798/1 "2023-03-29T19:22:32Z")

</div>

Hi all,

small announcement of an experimental package I made using the recently revamped ObjectiveC.jl called [AppleScriptingBridge.jl](https://github.com/jkrumbiegel/AppleScriptingBridge.jl). It’s not registered and probably won’t be due to it’s experimental status, but I’ve put some effort into it so if it can help someone a little, why not!

I wanted to automate exporting of photos from an application called Capture One and load them into Apple’s Photos app, both of which have an AppleScript interface. But I dislike writing AppleScript so much that I wanted to find out if I could use Julia to interface with it instead. So here is the result of that. It’s still quite buggy (in no small part because of the weirdness of ScriptingBridge) but maybe someone out there can get some fun or use out of it 🙂

Looks something like this:

```julia
using AppleScriptingBridge
const ASB = AppleScriptingBridge
ASB.@generate_module_from_sdef CO "Capture One 23"

app = CO.application()
doc = app.currentDocument
some_collection = doc.collections[1]
# ... and so on

```

To me it’s really nice that I can do only a few critical things with this package and use Julia’s amazing tools for the rest. Because in AppleScript, even the simplest things are a pain. If you’ve ever used it, you’ll know what I mean!
