Skip to main content

Comparison with other libraries

⚖️ Comparison

thiskuatsu/
cloud-storage
icloud-kitexpo-cloudkitokwasniewski/
icloud-storage
cloudkit-
storage
iCloud key-value store--
CloudKit records--
Google Drive----
iOS
Android-[1]--
Webpartial [2]----
CloudKit on Android/web--[1]--
New Architecture-
Legacy Architecture[3][3][3]
Typed error codes-partial--
5-value account statusbooleanboolean--
Identity-change event⚠️ [4]---
Remote-change event-n/a[5]
Offline write queue----
Size tiering-----
Binary / assets[9][6]--
User-visible iCloud Drive files----
Native end-to-end encryption-----
Batch operations-----
React hooks----
Encryption seam-----
Exported test harness--⚠️ [7]--
Mac Catalyst--⚠️--
Actively maintained[8][5]

[1] expo-cloudkit's README: Android throws CloudKitNotSupportedError on every call.
[2] Google Drive support is text-based only.
[3] Via the Expo Modules API; pulls in expo-modules-core.
[4] Fires before JS binds the emitter, crashing with std::bad_function_call (SIGABRT); hit three times.
[5] One version ever shipped; the change-listener PR has sat open since February.
[6] Field type is string | number | null, so it can't hold binary data.
[7] A mock factory exists, but isn't exported or documented.
[8] No commits since April; the last four releases shipped with Swift that didn't compile.
[9] CKAsset on Apple platforms; CloudKit Web Services' upload-token protocol on Android/web, capped at 15 MB by CloudKit. Use googleDriveFiles for anything bigger; it chunks and resumes the same way.