{"repo":"vinhnx/Shift","free":true,"listed":false,"github":"https://github.com/vinhnx/Shift","clone":"git clone https://github.com/vinhnx/Shift.git","description":"Light-weight & concurrent EventKit wrapper","language":"Swift","stars":66,"topics":["swift","swift-package-manager","calendar","eventkit","swiftui","wrapper","xcode","async-await","asynchronous","swift5"],"license":"MIT","category":"mobile-apps","readme_excerpt":"Shift Light-weight EventKit wrapper. --- Shift is a light-weight concurrency wrapper for EventKit: + Concurrency ready with async / await . (tag: 0.7.0 ) + Tranditional, Result completion handler if preferred (tag: 0.6.0 ) + Thread-safe. + SwiftUI supported. Shift is currently being used by Clendar app. Requirement + iOS 15.0 for async/await, tag 0.7.0 + iOS 14.0 and below for Result-based, tag Swift Packages Add Package Dependency... 2. Paste the repository URL (https://github.com/vinhnx/Shift) and click Next. 3. For Rules, select Version, in here, you can choose either: + Async/await = tag 0.7.0 + Result-based completion handler = tag 0.6.0 5. Click Finish to resolve package into your Xcode project. Tag Version: Concurrency support is now ready, in tag 0.7.0 In order to use old Result-based completion hanlders, please use tag 0.6.0 . Getting Started First thing first : + Add Calendar usage description to your app's Info.plist to request for user's Calendars access. + (Optional) configure own calendar name to request access to, preferrable in AppDelegate 's didFinishLaunchingWithOptions (Swift) or App 's init() (SwiftUI): Swift AppDelegate: in SwiftUI App, first import Shift , then configure your app's name to differntiate the name of your app's calendar in system's EventKit. --- A quick NOTE about concurrency Since async functions can only be called on concurrency context, if you call async function inside synchornouse context, Xcode will throws an error: So, there are two ","default_branch":null,"files":null,"tree":[],"storefront":"/r/vinhnx","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/vinhnx/Shift/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}