Juan Arzola
ancientbuho.bsky.social
Juan Arzola
@ancientbuho.bsky.social
Apple platforms dev, BG3 modding, my dog, photography etc.

Working on @benkyobox.bsky.social, a simple but powerful memorization app: https://www.autorelease.io/benkyobox/

Live coding: https://www.twitch.tv/ancientbuho
Other: https://linktr.ee/juanarzola
Pinned
Benkyo Box, a pretty simple general-purpose flashcard and memorization app for iPhone and iPad is now in the AppStore. I use it to remember new concepts that I come across or to improve recall on existing ones.

I hope that you find it useful: apple.co/44aXpuH

#flashcards #BenkyoBox
‎BenkyoBox
‎Benkyo Box is a flashcard app that is like your notes, but of the things that you want to commit to memory like names, fun facts, or exam material. These are the facts that you don't want to bury in ...
apple.co
handlesExternalEvents, yet another #SwiftUI view modifier which who knows what happens when it modifies a view that already was modified by it
December 6, 2025 at 3:06 AM
one interesting side effect of #AppIntent `supportedModes`, when set to `foreground`: it also opens a window of the default scene in a multi-window environment. Fixed by using foreground(dynamic), which allowed me to foreground the app with openURL using the appropriate scene for the url. #iosdev
December 4, 2025 at 8:39 PM
My weekend #ttrpg/#dnd project: making magnetic map tiles with Picasso tiles. Will need to re-stock my wife's office supplies after this 🙈 www.tiktok.com/@ancientbuho...
December 2, 2025 at 1:47 AM
Reposted by Juan Arzola
Letters + Words 1.0 is now available for iPhone and iPad (and Mac and Apple Vision Pro).

This app helps you discover words from letters, and is designed to support any type of word game you might be playing.
November 24, 2025 at 2:37 PM
Shortcut actions for Benkyo Box is now out in the AppStore, version 1.5.5 🚀.

I also wrote some things I learned while working with the AppIntents framework, in case it's useful to someone: www.autorelease.io/benkyobox/bl...

#iosdev #shortcuts
Shortcut Guidelines in Benkyo Box
www.autorelease.io
November 27, 2025 at 1:22 AM
I think I got a little carried away making #BenkyoBox hyper scriptable in #Shortcuts - now you can change any setting (including theme colors!). I also changed every setter (score, delete, swap questions and etc) to work with lists, so you can mass-update cards easily.

#iosdev
November 24, 2025 at 9:11 PM
Reposted by Juan Arzola
Back stage getting ready for acquisitions Inc tonighy and I feel so lucky to get to hang out and play games with this crew.
November 23, 2025 at 12:06 AM
Initial implementation of indexing AppEntities backed by #SwiftData in spotlight - always nice to see an old library making it simpler (FetchDescriptorObserver). gist.github.com/juanarzola/1...
IndexInSpotlight.swift
GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
November 21, 2025 at 7:47 AM
1.5.5 of Benkyo Box is now in beta, lots of #Shortcuts are now available to play with that automate importing cards, studying, etc. Still a few more planned before release, but it's starting to take shape: testflight.apple.com/join/jZXFDA46

#iosdev
November 19, 2025 at 8:43 PM
Too early for me but I try to go to the Friday ones ☕️
Hey #iOSDev #IndieDev folks! 👋🏻

Join us for the Swift Remote Studio iOS Dev Coffee meetup, Wednesdays at 9:30AM PST (5:30PM UTC)! ☕

💻 Sign up at swiftremotestudio.com
🎪 Join the Slack
🏁 Go to the `coffee` channel, click/tap the Zoom link

🌍 Europe & Asia/Australia coffee meetups too!
Swift Remote Studio – Virtual Coworking for iOS, Mac, and Swift Developers
swiftremotestudio.com
November 19, 2025 at 5:34 PM
Trying to use Snippet Intent to streamline studying from #Shortcuts / Siri (without opening the app).

Unfortunately 2 hurdles:
- wonky transitions when invoking an intent from a button. contentTransition() doesn't seem to help.
- Shortcuts `repeat` action does not continue to the next item.
#iosdev
November 18, 2025 at 2:05 AM
Reposted by Juan Arzola
In the tradition of carrying a pencil behind your ear, I made a holster for my Logitech Muse. #visionPro #visionOS
November 17, 2025 at 8:23 PM
I should have worked in this Quick Entry automation before the 17 other ones -- it's nice that you can see how the cards are being parsed from an LLM response before importing them (can't test with the actual model in the simulator, but this recording should illustrate the flow)

#flashcards
November 16, 2025 at 8:15 PM
Today's mystery:

gist.github.com/juanarzola/c...

This code is an extension factory method on FetchDescriptor that builds a FetchDescriptor that fetches a #SwiftData model by UUID, if the model conforms to UUIDString.
An extension that normally works, except from shortcuts, where uuid isn't found in the schema
An extension that normally works, except from shortcuts, where uuid isn't found in the schema - FetchDescriptor+fetchModel.swift
gist.github.com
November 16, 2025 at 2:44 AM
mastodon: say what you think, ignore character limits
bluesky: say what yo
November 14, 2025 at 11:50 PM
In Apple #Shortcuts, it's a bit of a pain to create arrays. I'd be nice if any Intent that returns A, if placed directly below another one that also returns A, makes it return [A]. I made a variant that does this explicitly (append input to output), but I'd be better if it was system-wide.
November 14, 2025 at 11:33 PM
#Shortcuts needs API design guidelines (if an intent just returns an entity should it be called “$EntityName” or “Get $EntityName”? are parameter placeholders always lowercase? is an intent that just gets any property from an entity “Get Details from $Entities” (like Reminders does?)... etc)
November 13, 2025 at 9:32 PM
Exposed enough intents in #BenkyoBox that now you should be able to study all flashcards in a list/folder from outside the app. A lot left to do still, but also a lot of fun in making the app scriptable 😄

#shortcuts
November 12, 2025 at 8:29 AM
Reposted by Juan Arzola
🧪 TestFlight builds are now starting to feature "create flashcard" Shortcuts, so that you can automate adding them. You can see other upcoming features in the board (anything marked 1.5.5) benkyoboxapp.notion.site/29803e90dab1...

as always, beta builds at: testflight.apple.com/join/jZXFDA46
Benkyo Box - Public Board | Notion
We have more in the plans than what’s in this board. These are public tasks. Next release: 1.5.5 Request features: https://www.autorelease.io/benkyobox/support.php
benkyoboxapp.notion.site
November 11, 2025 at 6:52 PM
I may have over-parametrized this Create Flashcard intent
November 11, 2025 at 12:59 AM
Reposted by Juan Arzola
My wife has been working 7 days a week for the last month, and her app is just two days away from launch. Based on their trajectory they’re a few thousand downloads away from ranking in the top 10 of the entire App Store. Can you do what I promise will be an enjoyable favor and preorder the game?
Spark: Puzzles for the Curious App - App Store
Download Spark: Puzzles for the Curious by The Mind Company on the App Store. See screenshots, ratings and reviews, user tips, and more games like Spark:…
apps.apple.com
November 10, 2025 at 3:31 PM
According to my testing, Views returned by AppIntents don't render any UIKit parts rendered via UIViewControllerRepresentable (with no console output indicating a clear error - they just render a yellow background).

That will complicate implementing Shortcuts / Siri views a bit

#SwiftUI
November 10, 2025 at 7:52 PM
"I wonder why my sorting/grouping logic breaks when I combine model IDs from freshly-fetched #SwiftData objects with cached IDs"

because gotcha, id identity doesn't survive coding
developer.apple.com/documentatio...

but don't worry ids, have real ids in them (`id.id`).

such an intuitive API
November 8, 2025 at 9:05 AM
I got a #StreamDeck + (www.elgato.com/us/en/p/stre...) to nerd out a little with shortcuts, activating scripts, etc. I love it, but inevitably ended up with a lengthy, time consuming feature request for overhauling navigation no the device, which of course negates any productivity gains so far 🫠
November 7, 2025 at 7:52 PM
Got started with a manual for Benkyo Box - phew that felt like writing too many blog posts 😮‍💨

Should help you get started and perhaps learn a few advanced features.

www.autorelease.io/benkyobox/ma...

Now I can get back to coding

#flashcard #apps
November 5, 2025 at 1:06 AM