Skip to content

Lift your code above the harsh realities of CloudKit. Swift and easy.

License

Notifications You must be signed in to change notification settings

nohype-ai/CloudKid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What?

CloudKid simplifies basic uses of CloudKit:

  • Ensuring iCloud account access
  • Fetching records
  • Fetching changes
  • Saving records
  • Querying for records
  • Creating zones and subscription
  • Responding to database notifications
  • Resolving data conflicts

How?

CloudKid abstracts away the technical details of CloudKit:

  • Local caching of CKRecordobjects for recommended conflict resolution approach via saving
  • Using proper CloudKit operations for everything, no CloudKit convenience methods internally
  • Providing meaningful result types for CKModifyRecordsOperation
  • Handling partial CloudKit errors
  • Splitting batch operations into batches of acceptable size
  • Transforming errors of type CKError into readable errors that can be displayed
  • Providing a meaningful result type for change fetches
  • Detecting save conflicts and providing a meaningful conflict type for conflict resolution
  • Producing a timeout error in case CloudKit operations don't respond

About

Lift your code above the harsh realities of CloudKit. Swift and easy.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages