While learning Codex, I asked it if it could modernize my existing CloudKit library by wrapping CKSyncEngine (iOS 17+) to add .public database support.

After explaining why CKSyncEngine likely does not support .public—mainly an inability to provide at scale the same API .private/.shared affords—Codex said yes, with a few caveats.

Then I thought of something more interesting to ask, and came away impressed. #cloudkit

I’m working on a #SwiftUI “admin” utility macOS app that’s pretty information dense and probably should be very hierarchical (for editing #CloudKit entities).

Is this navigationSplitView navigation structure too wild (possible)?

It’s kind of a 3 + 1 column Split View, but the 4th “column” is just an (optional) inspector view on the detail view. The content column would be a small table of entities (instead of a list view like most apps).

📣 Speaker Announcement

From building indie apps like Tasks & Karo, we're thrilled to welcome @mufasayc 🎉

Mustafa will take us from zero to sync with CloudKit — covering containers, databases, and real-world lessons learned ☁️

Expect practical tips, honest insights, and a lot of laughs along the way 😄

#DeepDishSwift #iOS #Swift #CloudKit #IndieApps

#iosdev #buildInPublic #coredata #swiftTesting

Will be exploring Apple’s cktool for #cloudkit setup, which hopefully will let me populate data that will let me test sync

https://developer.apple.com/icloud/ck-tool/

27/n

cktool - iCloud - Apple Developer

Find details on using cktool.

Apple Developer
Wondering if you can share your data with SQLiteData from @pointfreeco Well wonder no more. It just works!!!!!
Fantastic #CloudKit #Swift #SwiftUI #SQLite

#iosdev #buildInPublic #coredata #cloudKit

Roughed in a little prototype - UI mostly done, some test classes to create Tunes and TuneSets. Tomorrow rough in Collections. Nice that UIKit now lets us add UISplitViewControllers as tabs on UITabControllers.

15/n

#iosdev #buildInPublic #coredata #cloudKit

So the next question is - create a purpose-built prototype to experiment with attributed relationships or bang away at a disposable branch of my main project? I know what I _should_ do... And it will make things easier to share here without distractions. So a new project using Storyboard (i.e. UIKit) template with CoreData. Minimum deployment will be iOS 17. No CloudKit as yet, I want to be able to test migration from ordered many:many .

14/n

#iosdev #buildInPublic #coredata #cloudKit

Enough for tonight. Tomorrow I'll start prototyping the migration from explicitly ordered many:many to implicitly ordered via intermediate attributed relationship objects.

13/n

#iosdev #buildInPublic #coredata #cloudKit I also have make sure I'm selecting the Private database and the com.apple.coredata.cloudkit'recordName' is not marked queryable

https://lyons.app/2021/07/05/how-to-fix-field-recordname-is-not-marked-queryable-in-cloudkit/

gave me the answer: I have to modify the schema by adding a queryable index called recordName to the recordName metadata field for each record type so I can view the records. I also have make sure I'm selecting the Private database and the com.apple.coredata.cloudkit zone.
12/n
Edit: to fix link

How to fix “Field ‘recordName’ is not marked queryable” in CloudKit

The issue While writing an iOS app in Swift using CloudKit and CoreData with NSPersistentCloudKitContainer, I ran into the issue “Field ‘recordName’ is not marked queryable”…

Elaine Lyons

#iosdev #buildInPublic #coredata #cloudKit

Got the demo working after some annoying debug sessions. Seems like it has not been revisited since 2022, and iOS 18 changed the behaviour of collectionView.dequeueReusableCell - as of iOS 18 it asserts if you call it outside of cellForItemAt indexpath. it was being called in awakeFromNib to set a font.

You would think that a company with the resources of Apple would at a minimum task interns to COMPILE AND RUN demos called out in the docs 11/n