Skip to content

sabapathyk7/NetworkKit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NetworkKit

Elevate your iOS app's connectivity with NetworkKit – a powerful network layer seamlessly integrating Combine Framework, Async/Await, and Closures.

The full Tutorial can be found on Medium

Please take a look at the Example usage of NetworkKit

GitHub Repos

iOSNetworkExample

SOLID Principles

Force Update App

Features

  • Combine Framework Integration: Leverage the power of Combine to streamline asynchronous operations and handle complex data flows effortlessly.

  • Async/Await Support: Embrace modern Swift programming with async/await, simplifying asynchronous code and making your networking logic cleaner and more readable.

  • Closures for Flexibility: Customize your networking calls with closures, providing a flexible and modular approach to handle responses, errors, and more.

Examples

public protocol Networkable {
   func sendRequest<T: Decodable>(endpoint: EndPoint) async throws -> T
   func sendRequest<T: Decodable>(endpoint: EndPoint, resultHandler: @escaping (Result<T, NetworkError>) -> Void)
   func sendRequest<T: Decodable>(endpoint: EndPoint, type: T.Type) -> AnyPublisher<T, NetworkError>
}

Installation

Simply add NetworkKit to your project using Swift Package Manager - https://github.com/sabapathyk7/NetworkKit.git

Contributions

Feel free to submit issues or pull requests to enhance the functionality of NetworkKit.

Connect with Me

Stay updated on the latest features and releases by following me on LinkedIn.