A Swift library for simplifying some everyday tasks.
This software is distributed using Swift Package Manager.
You can add it using Xcode or by listing it as a dependency in your Package.swift
manifest:
let package = Package(
...
dependencies: [
.package(url: "https://github.com/richardpiazza/CodeQuickKit", .upToNextMajor(from: "7.0.0")
],
...
targets: [
.target(
name: "MyPackage",
dependencies: [
"CodeQuickKit"
]
)
]
)
Features in this project are largely grouped around how the apply-to or extend existing frameworks:
-
Dependency Management:
DependencyCache
offers a singleton approach to managing service and configuration dependencies throughout an application. The cache is configured by passing aDependencySupplier
to theconfigure(with:)
function. A dependency can be directly resolved from the cache usingresolve<T>() throws -> T
, or theDependency
property wrapper can be used to lazily reference as needed:@Dependency private var someService: SomeService
-
UserDefaults:
UserDefault
is a property wrapper designed to interact with theUserDefaults
storage.@UserDefault("counter", defaultValue: 0) var counter: Int
-
UIAlertController.ActivityAlertController:
This hack creates a alert dialog with a progress indicator and optional title/messaging strings.
-
ActivityAlertView
A SwiftUI workaround for using the
ActivityAlertController
. (UIKit Only)
Contributions are welcome and encouraged! See the Contribution Guide for more information.