Swiftpack.co - Package - alextall/DataKit

DataKit

DataKit consists of several modules that add a Combine interface to CoreData and URLSession. These modules can be used individually or together as needed.

PersistenceClient: A CoreData stack with convenience methods for the basic CRUD operations.

PersistenceClient+Decodable: The PersistenceClient stack with additional support for NSManagedObjects that conform to Decodable.

PersistenceClient+Encodable: The PersistenceClient stack with support for NSManagedObjects that conform to Encodable.

PersistenceClient+Codable: The PersistenceClient stack with support for NSManagedObjects that conform to Codable.

HTTPClient: A URLSession wrapper with convenience methods for GET, POST, PUT, and DELETE methods as well as executing pre-built URLRequests.

DataKit: All of the above in one tidy package.

Getting Started

DataKit is still in an experimental phase. Feel free to test it, but DataKit is not fit for production use.

Requirements

DataKit uses Swift 5.1 in Xcode 11 and supports the platforms below.

  • macOS 10.15+
  • iOS 13.0+
  • tvOS 13.0+
  • watchOS 6.0+

Installation

Swift Package Manager

Swift Package Manager is the recommended way to install DataKit.

.package(url: "https://github.com/alextall/DataKit.git", from: "0.2.0")

Git submodule

  1. Add the DataKit repository as a submodule of your application’s repository.
  2. Run git submodule update --init --recursive from within the DataKit folder.
  3. Drag and drop the Sources folder into your application’s Xcode project or workspace.

Github

link
Stars: 1
Help us keep the lights on

Dependencies

Used By

Total: 0

Releases

v0.2.0 - Nov 28, 2019

ATTENTION:

This release contains many breaking changes. Be cautious before upgrading.

NEW:

  • Additional Packages:
    • You can now use PersistenceClient with or without Decodable, Encodable or both
    • HTTPClient can also be used independently
  • PersistenceClient now has conditional and optional support for Codable
  • APIClient has been renamed to HTTPClient
  • HTTPResponse and HTTPError now encapsulate possible responses from URLRequests

CHANGED:

  • LOTS

v0.1.2 - Nov 23, 2019

NEW:

  • Added documentation for PersistenceClient

v0.1.1 - Nov 7, 2019

NEW:

  • Added conditional Equatable conformance to ScratchPad

v0.1.0 - Nov 3, 2019

NEW:

  • Everything!